Git 自动合并来自另一个仓库的提交

Git auto merge commits from another repo

我有 2 个私人 存储库 (不是分支)AB 我可以完全访问它们。

每当 A 进行提交时,我希望 Bcherry-pickmerge 新提交(假设没有合并冲突),以便 B 将始终与 A.

的最新更改保持同步

如何使用 Git 挂钩或其他方式完成此操作?

shell 脚本不太灵活,因为它意味着您必须 commit/push 使用命令行而不是 GUI(例如使用 SourceTree)。

在存储库 A 中创建一个 post-commit hook 切换到存储库 B 并运行 git pull.

"switching" 的类型取决于 B 所在的位置。如果它在同一台计算机上,挂钩可以 cd /path/to/B,但不要忘记在 运行 git pull 之前清除 GIT_DIRGIT_WORK_TREE env vars。如果 B 在另一台服务器上,挂钩应该 ssh 在那里。