将本地git存储库复制到其他服务器?

时间:2014-03-26 14:21:59

标签: git scp

可以在服务器之间复制git存储库吗?

在我的情况下,我正在迁移到另一台服务器,在一个完美的世界中,我可以简单地将git目录复制到旧服务器的新服务器上。我不完全确定git存储库是否依赖于机器。

如果我只是复制了回购而不是重新初始化它会出现任何问题吗?

据我所知,假设所有内容都已签入,git init并不是非常困难,但由于不值得解释的原因,我们假设只需复制目录就可以省去很多麻烦。

1 个答案:

答案 0 :(得分:3)

  

可以在服务器之间复制git存储库吗?

是的,可以毫无问题地复制它。

  

如果我只是复制了回购而不是重新初始化它会出现任何问题吗?

不,但当然你总是可以尝试一下。


另一方面,我的建议是更恰当地做到这一点。在你的新服务器上做一个git init --bare并从旧的存储库中将所有内容推送到新服务器并让git处理所有副本(这也是按照方式压缩的,所以它更快)。

摘要将是:

# on new server:
$ mkdir repo && cd repo && git init --bare

# on old server:
$ cd repo
$ git remote add new_server path/to/new/server
$ git push new_server --mirror

请注意--mirror使新服务器成为此服务器的镜像,这意味着它会推送所有分支,标签等。