我刚刚有一个关于git的快速问题 - 如何向后兼容是git存储库?例如,我使用git 1.6.4和svn2git ruby脚本创建了一个存储库,但我想把它放在运行Debian Lenny的机器上,它有git 1.5.6.5。我还能够正确地与存储库进行交互吗?
答案 0 :(得分:7)
在信息的实际存储方面,这是非常向后兼容的,在这种情况下你只是担心。我不是一个完全专家,但我怀疑自第一次稳定发布以来它已经发生了变化。
我能想到的唯一兼容性问题是,如果两个版本的git正在处理完全相同的repo(而不是克隆),并且.git / config中设置的选项/别名在较新版本中有效但是在旧版本中没有[完全]实现......但即使这样,你也必须非常努力地使用这个版本。而且,这与repo中的实际信息无关,只与您用来管理它的命令有关。这就是git发展的地方。
答案 1 :(得分:7)
git存储库的布局中几乎没有不兼容的变化;因为旧版本无法处理使用较新版本创建的存储库,或者使用较新的服务器进行交换(获取或推送),因此不兼容。
您应该检查RelNotes(例如来自here)以查找您使用的版本之间是否存在某些不兼容的更改。
这些不兼容的更改中的一些(可能全部)是:
.git/packed-refs
)的较新存储库中获取。与使用与新git相同的存储库的旧git相同,其中包含refs 我认为这些都不在1.6.4和1.5.6之间。