我会将 Git 存储库从旧的 SCM 服务器移动到新的。我的主要关注点(当然,除了保真度)是尽量减少停机时间。这是我的计划:
- 在新机器上,使用克隆每个存储库
git clone --mirror
- 复制每个存储库的存储库挂钩
- 禁止访问旧服务器(我们使用 gitosis,因此删除除新服务器之外的所有用户的访问权限)
- 移动 DNS 条目,以便 Git 用户使用 DNS 别名
- 对新服务器上的每个存储库执行
git pull
。 - 对于新服务器上的每个存储库,编辑配置文件以删除该
remote "origin"
部分。 - 开启对新服务器的访问
问题:
- 这看起来对吗?我特别关注第 6 步。
- 有什么方法可以减少停机时间吗?
谢谢。