我正在尝试将我的CVS仓库转换为Git,并且已经卡在这个问题上一段时间了。
我目前使用CVS和模块来共享项目之间的代码。这些允许您将不同的存储库“别名”为项目中的子目录,因此您可以像一个存储库一样更新/提交整个项目及其包含的远程存储库。
我看到有些帖子推荐使用子树合并或子模块来完成此操作,涉及到(svn:externals)。但是这行不通,因为:
- 子树合并显然不允许您轻松地推回/更新外部存储库。 - 子模块仍然需要您手动推送/拉取每个子模块。我有很多子模块,并且进入每个子模块以推送我的更改会很繁琐,并且可能会导致遗漏,因为更改会忘记提交。
只是为了明确,我想要一个包含其他Git存储库作为子目录的Git存储库,并能够使用一个命令同时提交/推送/拉取所有存储库。
我目前使用CVS和模块来共享项目之间的代码。这些允许您将不同的存储库“别名”为项目中的子目录,因此您可以像一个存储库一样更新/提交整个项目及其包含的远程存储库。
我看到有些帖子推荐使用子树合并或子模块来完成此操作,涉及到(svn:externals)。但是这行不通,因为:
- 子树合并显然不允许您轻松地推回/更新外部存储库。 - 子模块仍然需要您手动推送/拉取每个子模块。我有很多子模块,并且进入每个子模块以推送我的更改会很繁琐,并且可能会导致遗漏,因为更改会忘记提交。
只是为了明确,我想要一个包含其他Git存储库作为子目录的Git存储库,并能够使用一个命令同时提交/推送/拉取所有存储库。
git fetch
现在支持子模块,我相信会有更多的改进。不过,在子模块中提交代码与其预期目的还有一定距离。 - Cascabel