自搭git服务器-爱代码爱编程
在学校服务器上放个 git 服务器,用来跟服务器同步代码(在服务器跑程序、在自己电脑跟 github 同步)。比如一个叫 homework
的工程,涉及 4 个仓:
- 自己电脑上的普通仓
homework
; - github 上对应的
homework.git
; - 学校服务器上一个普通仓
homework
; - 学校服务器上一个 bare 的中转仓
homework.git
;
在自己电脑或学校服务器上改代码,两者通过学校服务器上的中转仓同步;而与 github 的同步在自己电脑上进行。
现自己电脑、github 两个仓已经有了,而且已经有代码了,主要搞学校服务器上的两个。
服务器 IP:1.2.3.4
,帐号:tom
。要建两个仓:
- 普通仓
homework
,在 /home/tom/codes/ 下。 - 中转仓
homework.git
,在 /home/tom/github/ 下。
transit repository
在 /home/tom/github/ 下建个中转仓,目录循例以 .git
结尾:
# 在学校服务器,linux
cd /home/tom/github
mkdir homework.git
cd homework.git
git init --bare
然后在自己电脑将代码 push 上这个中转仓:
- 由于在服务器上没有 root 权限,就不创 git 账户了,直接用自己账户。(自己用,问题不大?)
- 把学校服务器叫做
school
。
# 在自己电脑, windows
cd /d F:\codes\homework
git remote add school ssh://tom@1.2.3.4/home/tom/github/homework.git
git push school master:master
normal repository
在 /home/tom/codes/ 下建个普通仓:
# 在学校服务器,linux
cd /home/tom/codes
mkdir homework
cd homework
git init
# 关联中转仓
git remote add school ssh://tom@1.2.3.4/home/tom/github/homework.git
# 从中转仓拉代码
git fetch school
git checkout -b master school/master
就可以了,以后如果在服务器改了代码,就 push 去中转仓,然后在自己电脑 pull、再 push 上 github。
References
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/HackerTom/article/details/111089684