马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!1.编译装置git
Sql代码
1$wgethttp://kernel.org/pub/software/scm/git/git-1.7.3.tar.gz#今朝最新版本
2$tar-xzvfgit-1.7.3,tar.gz#解压出来
3$cdgit-1.7.3#进进目次
4$yuminstall-ygettext-develexpat-develcurl-develzlib-developenssl-devel#-y是默许主动装置,装置编译时用到的东东
5$./configure--with-curl=/usr/local#git装置路径
6$make&&makeinstall#最小化装置的CentOS是没有make的,能够yuminstallmake举行装置
7$git--version#检察版本号,的确git是不是装置乐成
2.装置gitosis
Sql代码
1$yuminstallpythonpython-setuptools
2$gitclonegit://eagain.net/gitosis.git
3$cdgitosis
4$pythonsetup.pyinstall
3.在开辟呆板上天生大众密钥(用来初始化gitosis)
Sql代码
1$ssh-keygen-trsa#不必要暗码,一起回车就行(在当地操纵)
2$scp~/.ssh/id_rsa.pubroot@***:/tmp/#上传你的sshpublickey到办事器
当git中碰到如许的成绩时分
Agentadmittedfailuretosignusingthekey.
Permissiondenied(publickey).
运转:ssh-add就能够了
4.初始化gitosis
Sql代码
1$addusergit#新增一个git用户
2$su-git#切换倒git用户下
3$gitosis-init</tmp/id_rsa.pub#id_rsa.pub是方才传过去的
4$rm/tmp/id_rsa.pub#id_rsa.pub已无用,可删除.
5.猎取并设置gitosis-admin
Sql代码
01$gitclonegit@***:gitosis-admin.git#在当地实行,猎取gitosis办理项目
02$vigitosis-admin/gitosis.conf#编纂gitosis-admin设置文件
03#在gitosis.conf底部增添
04[group组名]
05writable=项目名
06members=用户#这里的用户名字要和keydir下的文件名字相分歧
07#VI下按ZZ(年夜写)两次会实行主动保留并加入,完成后实行
08$gitcommit-a-m“***xx”#要记着的是,每次增加新文件必需实行gitadd.,大概gitaddfilename,假如没有新加文件,只是修正的话就能够实行此句。
09#修正了文件今后必定要PUSH到办事器,不然不会失效。
10$gitpush
在windows下用git-bash天生密钥对ssh-keygen-trsa
1.在A机下天生公钥/私钥对。
[chenlb@A~]$ssh-keygen-trsa-P
-P暗示暗码,-P就暗示空暗码,也能够不必-P参数,如许就要三车回车,用-P就一次回车。
它在/home/chenlb下天生.ssh目次,.ssh下有id_rsa和id_rsa.pub。
2.把A机下的id_rsa.pub复制到B机下,在B机的.ssh/authorized_keys文件里,我用scp复制。
[chenlb@A~]$scp.ssh/id_rsa.pubchenlb@192.168.1.181:/home/chenlb/id_rsa.pub
chenlb@192.168.1.181spassword:
id_rsa.pub100%2230.2KB/s00:00
因为还没有免暗码登录的,以是要输出暗码。
3.B机把从A机复制的id_rsa.pub增加到.ssh/authorzied_keys文件里。
[chenlb@B~]$catid_rsa.pub>>.ssh/authorized_keys
[chenlb@B~]$chmod600.ssh/authorized_keys
authorized_keys的权限如果600
windows客户端要用tortorisePLink的体例毗连,并用设置repo的时分,要写全体路径,而且不要加上分支名git@88.88.88.88:repositories/hello.git
cdrepositories - gitinit--bareproject1.git
复制代码新建项目
到此步就算完成gitosis的初始化了。接上去的是新建一个新项目到办事器的操纵,如第5步中设置gitosis.conf文件增加的是
Sql代码
01[groupproject1]#组称号
02writable=project1#项目称号
03members=***#用户名***为[groupgitosis-admin]中的members一样
04#记得实行
Sql代码
01$gitcommit-a-m“增加新项目project1,新项目标目次是project1,该项目标成员是***“#“”里的内容自定
02$gitpush
07#进进到项目目次
Sql代码
01$cd/home/用户/project1#project1要与gitosis.conf文件设置分歧
02$gitinit
03$gitadd.#新增文件寄望前面有一个点
04$gitcommit-a-m“初始化项目project1″
12#然后就到把这个项目放到办事器上往
Sql代码
01$gitremoteaddorigingit@***:project1.git#***为办事器地点
02$gitpushoriginmaster
15#也能够把下面的两步分解一步
Sql代码
01$gitpushgit@***:project1.gitmaster
7.创立新的repositories
翻开gitosis.conf文件,你将看到
[groupgitosis-admin]
writable=gitosis-admin
members=elton@macbook
这个是办理组的权限,members中的用户名就是方才上传的公钥内里的用户名。
在这个文件前面到场:
[groupmyteam]
members=elton@macbook
writable=free_monkey
这里你界说了一个叫myteam的组,授与elton@macbook这个用户写“free_monkey”这个repo的权限
gitcommit-a-m"Alloweltonwriteaccesstofree_monkey"
gitpush
下面的操纵就更新了办事真个权限。
上面就入手下手创立free_monkey的repo
mkdirfree_monkey
cdfree_monkey
gitinit
创立.gitignore文件,用于疏忽某些不必要举行代码办理的内容,如rails的使用大概以下:
.DS_Store
log/*.log
tmp/**/*
config/database.yml
db/*.sqlite3
提交卸码:
gitremoteaddorigingit@YOUR_SERVER_HOSTNAME:free_monkey.git
gitadd.
gitcommit-a-m"initialimport"
gitpushoriginmaster:refs/heads/master
接上去,能够增添成员的公钥到体系中了
cdgitosis-admin
cp~/alice.pubkeydir/
cp~/bob.pubkeydir/
gitaddkeydir/alice.pubkeydir/bob.pub
修正gitosis.conf
[groupmyteam]
-members=jdoe
+members=jdoealicebob
writable=free_monkey
提交修正:
gitcommit-a-m"GrantedAliceandBobcommitrightstoFreeMonkey"
gitpush
别的成员就能够猎取代码了
gitclonegit@YOUR_SERVER:free_monkey.git
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们! |