Git 介绍(来源于度娘)
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
切入正题,下面开始部署git-server
[root@git-server ~]# yum -y install git //安装主程序
[root@git-server ~]# groupadd git //创建git用户组
[root@git-server ~]# useradd git -g git -s /bin/git-shell //创建git用户,指定基本组及登录shell
[root@git-server ~]# mkdir /git //创建目录用于git数据仓库
[root@git-server git]# git init --bare test.git //创建git仓库
Initialized empty Git repository in /git/test.git/
[root@git-server git]# chown -R git.git /git //修改仓库所在目录属主属组
[root@git-client ~]# ssh-keygen -t rsa -f /root/.ssh/id_rsa -N '' //在客户端创建密钥用于免验证登录
[root@git-client ~]# scp .ssh/id_rsa.pub 10.8.8.63:/root //拷贝公钥至server端
[root@git-server ~]# mkdir /home/git/.ssh/
[root@git-server ~]# cat id_rsa.pub >>/home/git/.ssh/authorized_keys //将client公钥写入git用户认证文件,多个公钥可逐行写入
[root@git-client ~]# yum -y install git //安装主程序
[root@git-client git-clone]# git config --global user.name liu //配置个人信息, Git 为每个提交都记录名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址
[root@git-client git-clone]# git config --global user.email liu@abc.com
[root@git-client ~]# mkdir /git-clone //创建目录用于本地仓库
[root@git-client ~]# cd /git-clone/
[root@git-client git-clone]# git clone git@10.8.8.63:/git/test.git //克隆远程仓库至本地,同SVN的checkout
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
[root@git-client git-clone]# ls //克隆成功后当前目录下会产生对应项目目录
test
[root@git-client git-clone]# cd test
[root@git-client test]# touch hello.php //创建hello.php文件用于测试
[root@git-client test]# git add hello.php // git add 命令可将该文件添加到缓存
[root@git-client test]# git commit -m "test" //git commit 将缓存区内容添加到仓库中
[master (root-commit) 065448d] test
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 hello.php
[root@git-client test]# git push //git push 命令将本地仓库所有更新提交至远程仓库
至此,Git就算是部署完成了,至少可以用了对吧!!!
如果团队很小,把每个人的公钥收集起来放到服务器的/home/git/.ssh/authorized_keys文件里就是可行的。如果团队有几百号人,就没法这么玩了,这时,就可以用Gitosis来管理公钥了。
如果需要使用到Gitosis,可关注另一篇关于此工具的用法,链接如下:
http://blog.csdn.net/qq_36806379/article/details/79188862