如何将git 1存储库升级为git 2存储库?

时间:2017-03-22 14:31:22

标签: git

它们看起来非常相似,但我不确定,如果将git 1 repo与git 2工具一起使用是个好主意。

是否存在升级可能性?

编辑:也可以接受“不需要升级”或“你无法升级”的答案,因为他们回答了这个问题。

1 个答案:

答案 0 :(得分:2)

1.7.11和任何当前2.x版本之间的内部数据格式变化很少,但v1.7.11本身引入了新的v4索引(如.git/index)文件格式和v2。 3.0引入了一个新的"分裂指数"选项。这些都是向上兼容的更改,即您可以在任何现有存储库上使用较新的Git版本,包括具有现有索引文件的存储库。

如果你运行一个较新的Git,用较新的v4替换旧的v2索引,然后由于某种原因需要再次运行旧的Git版本,你可以简单地删除并重建索引(当然这会删除任何上传的内容) ,或任何正在进行的合并)。

现在能够更改磁盘存储库格式,从Git版本2.6.3开始(现有格式现在标记为"版本1和#34;)但是没有新格式已经推出。

在任何情况下,您始终可以从较旧的Git版本git clone到较新的Git版本,反之亦然。 (使用--mirror克隆复制所有引用。确定是否保留远程,如果有,则在获得克隆后是否更新fetch行。)

显然,新的Gits不会理解或使用新功能(例如新的push.default设置和git worktree add),但实际的存储库格式本身仍然是相同的。