移动一个git服务器:我应该使用repos吗?

我从一个较老的主机上拉了一堆公司的git仓库到我们公司的git服务器。 我开始只是将旧版本的git clone到新服务器上的版本库目录中。 不久,我们将把旧主机的DNS指向新的服务器。

我的问题是这样的:我应该在这个切换发生之前让新的仓库裸仓,还是可以像原来一样运行(正常的,非裸仓库与.git/目录)? 我猜的是前者,但是我想要一个真正知道确认的人。

像voretaq7说的。 是的,这是非常明智的。

在GitMagic ch3中有一个很好的解释,你为什么要使用裸回购。

裸仓库是这样命名的,因为它没有工作目录; 它只包含通常隐藏在.git子目录中的文件。 换句话说,它保留了一个项目的历史,并且永远不会保留任何给定版本的快照。

在一个集中的版本控制系统中,一个裸存储库的作用类似于主服务器:您的项目的主页。 开发人员从中克隆您的项目,并将最新的官方更改推送给它。 通常它驻留在服务器上,除了传播数据之外别无其他。 开发发生在克隆中,所以家庭存储库可以没有工作目录。

为了使转换容易使用:

 git clone --mirror 

有关于StackOverflow的问题讨论了git clone –mirror和git clone –bare之间的区别 。

你不必把它们作为裸仓库,但我强烈的考虑这样做,为了美观的一致性(git“服务器”有一个裸回购,git“客户端”有一个.git目录结帐)。

如果没有其他的东西,那么备份就更less了。