搭建简易的 Git Server 知识

九五霸霸 2019-6-4 811


实验机器:

Git Server: 10.0.8.36 

Git client: 10.0.8.35 


1. 安装git软件包

# yum install git
... ...
Installed:
  git.x86_64 0:1.8.3.1-6.el7_2.1
Dependency Installed:
  perl-Git.noarch 0:1.8.3.1-6.el7_2.1


2. 创建访问用户git

git server 机器上操作。

useradd -d参数指定的目录将为所以git仓库存放的目录,目录可以随意指向。

# groupadd git
# useradd -g git -d /home/git git


3. 创建裸仓库

git server 机器上操作。

# cd /home/git
# mkdir docker.git
# cd docker.git/
# git --bare init
Initialized empty Git repository in /home/git/docker.git/
# chown -R git.git git


4. 免密访问

① git server 机器上操作。

# passwd git

设置密码是为了让客户端服务器把公钥方便上传至 /home/git/.ssh/authorized_keys

如果复制粘贴客户端的公钥能生效,可以不操作该步骤。


② git client 机器上操作。

# ssh-keygen -t rsa
# ssh-copy-id git@10.0.8.36
git@10.0.8.36's password: 
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh 'git@10.0.8.36'"
and check to make sure that only the key(s) you wanted were added.


③ git server 机器上操作。

免密操作完成后,禁用git用户shell登录。

# vim /etc/passwd
git:x:1001:1001::/home/git:/usr/bin/git-shell


5. 测试clone与push

# git clone git@10.0.8.36:/home/git/docker.git
Cloning into 'docker'...
warning: You appear to have cloned an empty repository.
# cd docker/
# vim README.MD
# git add .
# git commit -m "readme"
[master (root-commit) ba3854e] readme
 1 file changed, 1 insertion(+)
 create mode 100644 README.MD
# git push origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 219 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@10.0.8.36:/home/git/docker.git
 * [new branch]      master -> master


6. 备份测试

经测试,备份git server下的Git数据存放目录 /home/git/docker.git 到备份机器上。备机创建git用户和用户目录指向Git数据存放目录,一样可以访问。


---

Git Server 参考

- https://git-scm.com/book/en/v2/Git-on-the-Server-GitWeb

- https://git-scm.com/book/en/v2/Git-on-the-Server-Getting-Git-on-a-Server

- http://www.jianshu.com/p/6db06489ba3d

- http://blog.csdn.net/bluishglc/article/details/49310125

- http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000


最后于 2019-6-20 被矢量比特编辑 ,原因:
最新回复 (0)
    • 运维开源项目互助社区
      2
        立即登录 立即注册 
返回