Menu Close

git 服务器迁移

一开始git在ip为127.0.0.1的服务器上,clone 地址为 [email protected]:/data/git/project.git

现在转移到ip为127.0.0.2的服务器上,git项目路径保持不变 (为了理解简单性)

采取的是克隆裸库,更改git 地址

1:克隆裸库,在目标服务器(127.0.0.2)执行下列命令
[root 127.0.0.2]# cd /data/git
[root 127.0.0.2]# git clone --bare [email protected]:/home/git/project.git

现在仓库已经有了,下一步增加git用户,以及免密码克隆。

[root 127.0.0.2]# useradd git
安全设置  git用户不能登录等
[root 127.0.0.2]# vi /etc/passwd  #将git用户最后面的/bin/bash删除,改为/usr/bin/git-shell在fetch的时候会提示输入密码, 改为nobody,会在clone的时候会出现 “fatal: protocol error: bad line length character: This”

移动authorized_keys文件

[root 127.0.0.1]# scp /home/git/.ssh/authorized_keys      [email protected]:/home/git/.ssh/authorized_keys

更改git服务器地址

[user 使用git的用户机器]# git remote set-url origin [email protected]:/data/git/project.git
[user 使用git的用户机器]# git remote -v #查看地址是否已经修改
[user 使用git的用户机器]# git fetch     #是否可以同步文件

如果fetch需要登录,请查看/home/git 下.ssh权限

[root 127.0.0.2]#ls -al #如果所有者及组不是git 请执行:
[root 127.0.0.2]chown -R git:git .ssh

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注