Git服务器构建(Fedora16)
参考:
http://git-scm.com/book
所有操作都是root用户
1,安装
ssh远程登陆服务器,安装配置git服务器
yum install git-core openssh-server openssh-client
2,添加新用户git, 该用户将作为所有代码仓库和用户权限的管理者:
useradd -m git
passwd git
3,安装配置gitosis
安装pythontool,准备gitosis安装
yum install python-setuptools
gitosis会将git仓库放在 git用户home目录下的repositories中,
所以要事先建立一个该目录的链接使仓库放在自己的地方
mkdir /home/git/repositories
ln -s /home/git/repositories /gitserver
然后以git身份登录服务器,
下载gitosis
git clone https://github.com/res0nat0r/gitosis.git
cd gitosis
sudo python setup.py install
3,在自己工作的电脑上生成ssh公钥,用scp拷贝到服务器
生成ssh公钥的命令:
ssh-keygen -t rsa
拷贝到服务器的命令:
scp .ssh/id_rsa.pub git@servername:/tmp
这里git是指git用户,servername就是服务器地址
4,在服务器上,切换到git用户
git用户操作服务器,改变公钥属性
sudo chmod a+r /tmp/id_rsa.pub
git gitosis-init < /tmp/id_rsa.pub
sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
这时应该会生成一个gitosis-admin.git
5,在回到自己工作的电脑上来clone这个库
git clone git@servername:/gitserver/gitosis-admin.git
vim gitosis.conf //修改配置文件
git commit -am "test" //此处的提交只是提交到本地,所以和远程务器是不同步的
git remote add origin git@servername:/git/gitosis-admin.git //增加远程服务器
git push origin master //将改变push 到远程务器上
如果这个不行,就用git push origin +master
6,在服务器新建一个库
首先在服务器端
cd /gitserver //我的工程目录
mkdir test.git
git init --bare
然后在工作电脑就可以clone了
git clone git@servername:/gitserver/test.git
git操作的一些命令:
git status 查看变动的文件
git diff --cached 查看已做的修改
git log 查看日志
git log -p 查看详细修改的日志
git revert [commit ID] 撤消某次提交
git reset [commit ID] 回复当前分支到一个原先的版本。版本号可以用 git log 查看,也就是提交的 ID 号。在commit [ I D ]
想具体了解,请参考开头提到的那本书。后面我会写些读书笔记。
猜你喜欢
转载自ericchan2012.iteye.com/blog/1668136
今日推荐
周排行