1

我四处搜索,但我不明白什么是最好的方法:我想克隆一个现有的 CVS 存储库(特别是 OpenSSH 可移植),或者它的修订版(例如 v6.0p1)到一个 git repo ,用于应用个人补丁。每当发布另一个稳定的 OpenSSH 时,我还想合并更改。它不必是实时的或任何特殊的,只要能够将我的补丁合并到新版本即可。

我以前有 git(和 SVN 经验),但没有 CVS 经验。

4

1 回答 1

2

您有两个选择:维护供应商分支或使用git cvsimport. 您使用哪种取决于您想要多少历史记录以及您的耐心程度。

如果您想要完整的历史记录并且有耐心,您可以使用git cvsimport. 如果你幸运的话,你可能会发现其他人已经这样做了并且正在保持最新的结果——如果你信任他们,使用他们的 repo 是最好的选择。

如果您不需要完整的历史记录或不耐烦,您可以维护一个供应商分支:这是我们在拥有 DVCS 之前所做的 :)。获取当前版本的副本,将其放在一个名为“vendor”的分支中,并以此为基础进行工作。当下一个版本发布时,切换回供应商分支,更新它以匹配新版本并酌情合并/重新设置基准。

请注意,虽然在使用 DVCS 时不需要供应商分支,但在 git 中它们实际上比在 Subversion 中要容易得多,因为 git 不需要您识别重命名并且(与现在的 svn 一样)不会离开 meta -当您解压最新版本时,您的工作副本中的所有数据都会受到冲击。

于 2012-08-18T21:46:15.673 回答