Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git通过分支自动合并_Git_Merge_Githooks - Fatal编程技术网

Git通过分支自动合并

Git通过分支自动合并,git,merge,githooks,Git,Merge,Githooks,我正在尝试实现一个钩子,它可以通过我们目前拥有的一些分支自动合并 假设我们有4个分支:project-1.0,project-1.1,project-1.2,master 我们的目标是,如果我们必须在某个时间修复一个问题,比如说project-1.0,该更改将自动传播到其他分支 我在读书,这似乎是一个好的开始,但是有没有更好的方法来完成这样的事情呢 由于更新服务器端钩子在推送程序尝试更新时执行。因为它是在更新任何内容之前调用的,所以不会合并以前的提交而不是实际提交吗 你有没有看到博客文章中提到的

我正在尝试实现一个钩子,它可以通过我们目前拥有的一些分支自动合并

假设我们有4个分支:
project-1.0
project-1.1
project-1.2
master

我们的目标是,如果我们必须在某个时间修复一个问题,比如说
project-1.0
,该更改将自动传播到其他分支

我在读书,这似乎是一个好的开始,但是有没有更好的方法来完成这样的事情呢


由于
更新
服务器端钩子在推送程序尝试更新时执行。因为它是在更新任何内容之前调用的,所以不会合并以前的提交而不是实际提交吗

你有没有看到博客文章中提到的内容?如果是这样的话:您希望得到什么进一步的改进,要求“更好的方法”@lucash我确实看到了,但在我看来,更新服务器端钩子将合并以前的提交,而不是实际的提交,因为它是在任何更新之前执行的。因此,切换到project-1.1并与project-1.0合并不会合并以前的更改。如果我错了,请纠正我。你是对的,钩子好像是按照你说的方式做的。有两种方法可以解决这个问题:要么使用post-receive钩子。但是,它会从STDIN获得一个更新的引用列表,因此需要进行更大的重构。否则,您可以确保更新后的新版本用于第一次合并。我已经在存储库的一部分中完成了这项工作。对于合并提交,这有一条消息“Merge commit'SHA-1'into X.X”(而不是“Merge branch'refs/heads/X.Y'into X.X”)的缺点。谢谢@lucash,你能添加一条注释吗,这样我就可以接受它作为答案了?谢谢