【问题标题】:Pitfalls when upgrading to a new version of Git升级到新版本 Git 时的陷阱
【发布时间】:2011-11-08 21:12:15
【问题描述】:

我正在编写一些关于我们将如何在组织中使用 Git 的文档。

现在,我要求每个人都使用相同版本的 msysgit (v1.7.7.1)。这是一个好主意,还是团队成员在他们希望安装它们时使用更新版本的 Git 是否可行/可取?如果最好每个人都使用相同的版本,那么在升级到新版本的 Git 时可能存在哪些陷阱?例如,它可能有一些我们需要了解的重大重大更改,或者将 Git 数据库转换为新格式?显然,不可能预测未来,但过去的例子可能是有用的(即这些事情以前曾是个问题)。理想情况下,Git 开发人员在这个问题上的指导会很棒。

这个问题的动机是 Git 存储库以一种特殊的存储库文件格式存储,在我看来,新版本的 Git 可能会改变这种格式(诚然,我并不完全理解它的结构)。我需要做的最后一件事是让开发停止,因为有人决定将服务器上的裸存储库文件格式升级到其他人尚未安装的最新和最好的 Git 版本。 (或者更糟的是,使用旧版本 Git 的客户端会损坏服务器上新转换的数据库。)

【问题讨论】:

标签: git msysgit


【解决方案1】:

次要版本之间的更改非常小,即使从 1.6 更改为 1.7,git 也不会严重破坏兼容性。通常会添加新功能、命令的新标志、一些性能改进和错误修复,并且不会破坏跨版本的兼容性。我建议阅读每个新版本的发行说明,看看是否提到了有关兼容性的任何内容。我相信回购结构的最后一次重大变化是在 1.5.0 中,但即便如此,在 1.4.x 和 1.5.0 之间也没有任何问题。

也看这里:Git repository backwards compatibility

【讨论】:

  • 感谢您的链接;我在搜索中没有找到那个。第二个答案中列出的示例很有见地。
【解决方案2】:

您只能通过查看特定两个版本之间的差异来判断,但我不认为 git 曾经在任何重大方面破坏了兼容性。也许,改变了一些命令行调用。但即使这样也大多是向后兼容的。

【讨论】:

    猜你喜欢
    • 2012-06-05
    • 1970-01-01
    • 2012-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-27
    • 2012-02-15
    相关资源
    最近更新 更多