提交或推送提交时,如何自动将项目的一部分提交/推送到另一个存储库?

时间:2020-01-21 04:50:53

标签: git

我在仓库1处有一个受源代码控制的项目。 我想这样做,以便在我提交文件或推送提交时,同时将提交提交/推送到另一个仓库(仓库2)。 这可能吗?唯一的潜在问题是,由于存储库2仅包含存储库1的文件的子集,因此可能会导致存储库1的提交包含存储库2所没有的文件。在这种情况下,不应进行任何提交。

1 个答案:

答案 0 :(得分:0)

您可以使用git remote set-url --add --push设置的配置推送到multiple repositories in one command

但这假设那些存储库具有相同的历史记录(相同的提交和文件)

在您的情况下,您需要编写推送脚本,以便:

  • 比较本地repo1和本地repo2之间的文件
  • 将这些文件导入repo2
  • 将repo2的本地克隆添加,提交并推送到远程repo2。

通常是:

cd /path/to/local/clone/of/repo2
git --work-tree=/path/to/repo1 add .
git status # check there is no new files added
# add, commit and push to origin of repo2