git - 将两个 git 存储库 merge 为不同的版本

标签 git merge versioning

我有两个 git 仓库,像这样:

  • 项目1
  • 项目2

proj1 有一个标签v1.0.0,proj2 有标签v2.0.0v2.1.0。现在我想将 proj1(特别是 v1.0.0 标记) merge 到 proj2 中,就好像它是 proj2 的早期版本一样,这样我就有了标记 v1.0.0v2。 0.0v2.1.0。如果我必须将 proj2 merge 到 proj1 或将两者 merge 到一个新的存储库中,我也没有问题,只要我获得所有标签和 merge 的历史记录即可。

有很多人问类似的问题,如下所示,但似乎没有人遇到我的特殊问题 - 添加两个存储库作为不同的版本。 Merging two Git repositories

这可能吗?

最佳答案

这是可能的。在 proj1 中使用 git remote add proj2 file:///path/to/proj2。然后 git fetch proj2。现在,proj2 中的所有提交在 proj1 中都是可见的,您可以使用分支 merge 、标记等将内容拼接在一个存储库中。

如果这是其他人使用的存储库,您可能需要在开始之前备份您的 .git 目录。

关于git - 将两个 git 存储库 merge 为不同的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3981848/

相关文章:

git - 在 Windows 7 的 git bash 中打印欢迎消息

r - 如果一个数据框中的多个值重复多次,如何将它们替换为另一个数据框中的多个值

google-sheets - 合并不规则的基于时间的数据系列

android - 我应该在 Android Studio 中对应用程序/构建文件进行版本控制吗?

haskell - 为什么 haskell 版本控制策略有两个主要版本的地方,而不是语义版本控制中的一个?

git - 错误 : Permission to user1/repo. git 拒绝用户 2

git - Visual Studio 2015 git不显示所有历史记录,仅显示第一次提交

git - 在 git 上重命名文件并保留历史记录

arrays - 在 df1 中的键数组中查找 df2 中的键并合并相应的值

mysql - 如何正确管理数据库中行的版本?