git 搭建服务器并同时 push 到两台服务器

(省略git基础搭建)

服务器A  10.129. ... . A

服务器B  10.129. ... . B

原代码仓库 [email protected]. ... . C

本机  D

完成目标: 从 C 上git clone 代码到本机 D, 以后每次在本地 D 修改完代码同步提交到 A 和 B。

做法:

        1) 在A  B上分别搭建服务器:(A B 服务器上同时执行)

              1.  创建git用户 : adduser git;      

   2. 设置git用户密码: passwd git --> <回车>

  3. 创建 git 仓库(切记不要创建到/root下, 假如创建,git push 将会报错)

  a.在服务器A的/home/repo 的目录下创建仓库: git init --bare A.git (服务器B也一样)

b. 赋权限: chmod -R 777 /home/repo/* (给A.git赋777权限,否则 push将会报错, 赋775 权限也不行

  c . 添加git用户到A.git :chown git:git A.git (不添加git用户,push也会报错)

到这里, A B两台git服务器已经搭建成功

2) git clone 代码

 git clone --bare [email protected]. ... .C/ C.git (一定要加 --bare) 到本地D

  cd C.git

git push --mirror [email protected]. ... . A.git (以镜像的方式提交到刚才创建的两台服务器)

 git push --mirror [email protected]. ... . B.git

此时, 已将C仓库完整的复制到A B两台服务器上, 删除本地D git clone 的仓库 rm -rf C.git

测试服务器是否搭建成功: 在本地D git clone [email protected]. ... . A.git

3) 配置config

  在本地D cd A/.git; vim config;

在 [remote "origin"] 下面 同时配置好 A 和B的url ,如果还想将C同步,可以将C的url也配置到里面。

成功!!!

每次提交应该会要输入密码,想取消密码,请自己百度。。。

 


你可能感兴趣的:(linux,git)