首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Git服务器在Ubuntu中的筹建

2012-07-15 
Git服务器在Ubuntu中的搭建?(二) ? Git 管理员(git bash下运行)1.安装msysgit,??? 下载地址:http://code.g

Git服务器在Ubuntu中的搭建

?

(二) ? Git 管理员(git bash下运行)

1.安装msysgit,

??? 下载地址:http://code.google.com/p/msysgit/downloads/list

???? 缺省安装。

?

2.生成服务器管理员公钥。

??? 执行命令ssh-keygen -t rsa,操作时刻参照第一部分第7步,用于提供给服务器端初始化gitosis。

?

3.从服务器?克隆gitosis-admin.git

??? 首先选定目录,如G盘:cd /g/

??? 然后,新建一个目录mkdir gitproject

????git clone git@YOUR_SERVER:gitosis-admin.git

??? (?YOUR_SERVER可以是你的服务器名称或者ip,我这里的ubuntu的ip为192.168.1.102?)


4. 编辑?gitosis.conf

?????cd gitosis-admin

?????你将看到以下文件gitosis.conf和keydir/,gitosis.conf是gitosis的配置文件,用于配置用户和权限,keydir/是所有组成员的

公钥。

???? vi?gitosis.conf,?打开gitosis.conf文件,内容为:

???? [group gitosis-admin]
???? writable = gitosis-admin
???? members =??Administrator@LILIN

???? 这个是管理组的权限,members中的用户名就是刚才上传的公钥里面的用户名。

?????

?????把内容修改为:

???? [gitosis]
???? gitweb = yes

???? [group gitosis-admin]
???? writable = gitosis-admin
???? members = Administrator@LILIN wirror800@192.168.1.102

???? [group apps ]
???? writable = apps
???? members = Administrator@LILIN wirror800@192.168.1.102

???? 其中?gitweb = yes表示启用对gitweb的支持。?这里定义了一个叫apps?的组,授予Administrator@LILIN和wirror800@192.168.1.102

两个用户写“apps?”这个repo的权限

????

?????然后push到服务端后,服务器端就立刻生效。

???? git commit -a -m “created a new repository”

???? git push

???? 这样就?更新了服务端的权限。

?

5.创建一个app的repo

???? mkdir apps

???? cd apps

?????git init


6.创建、编辑 .gitignore ,?用于忽略某些不需要进行代码管理的内容,如rails的应用可能如下:

??? .DS_Store
??? ? log/*.log
??? ? tmp/**/*
??? ? config/database.yml
??? ? db/*.sqlite3

???

7.编辑 .git/description 内容, 加上apps 的说明

8.?提交代码

??? git remote add origin git@YOUR_SERVER:apps.git

???? git add .

???? git commit -am "imitial import"

??? git push origin master:refs/heads/master


9.增加成员的公钥到系统中

??? cd ../gitosis-admin

??? cp member_1.pub keydir/

??? cp member_2.pub keydir/ git

??? add keydir/member_1.pub keydir/member_2.pub

?

??? 修改gitosis.conf,并提交

??? [group apps]
??? - members = wirror800
??? + members = wirror800 member_1 member_2
??? writable = apps

?

??? git commit -a -m "Granted new members commit rights to apps"
??? git push

?

10.?其它成员获取apps的代码

??? git clone git@YOUR_SERVER:apps.git

?

? 在windows下安装git服务器也是可以的,我们开始尝试使用Cygwin来操作,但在使用gitweb的时候遇到困难。git毕竟诞生于

linux,还是建议大家使用linux来搭建git服务器吧。Mr. Zhang也提供了一个可以在windows下安装git服务器的方法,链接地址奉献

给大家:http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on-windows/ 。再次感谢CTO Mr. Zhang 这几天

执着的奉献精神,让我受益匪浅。

热点排行