Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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 - Fatal编程技术网

不要让git合并删除文件

不要让git合并删除文件,git,merge,Git,Merge,假设我有分支A和B。在A中有一些文件被删除。现在A被合并到B中,我想在合并后在B中存在这个。最简单的方法是什么?如果(出于任何原因)--no commit确实不适合您,请继续进行合并。然后,执行git checkout head~path/to/file。然后,执行提交--amend。这将修改合并提交,使已删除的文件与合并前在分支B中的文件相同。如果(出于任何原因)--no commit确实对您无效,请继续执行合并。然后,执行git checkout head~path/to/file。然后,执

假设我有分支A和B。在A中有一些文件被删除。现在A被合并到B中,我想在合并后在B中存在这个。最简单的方法是什么?

如果(出于任何原因)
--no commit
确实不适合您,请继续进行合并。然后,执行git checkout head~path/to/file。然后,执行
提交--amend
。这将修改合并提交,使已删除的文件与合并前在分支B中的文件相同。

如果(出于任何原因)
--no commit
确实对您无效,请继续执行合并。然后,执行git checkout head~path/to/file。然后,执行
提交--amend
。这将修改合并提交,使已删除的文件与合并前在分支B中的文件相同。

关于这一点的某些内容没有意义

您描述的情况对于协作工作来说是相当标准的;一个文件可能会被删除,当您将该分支合并到另一个分支中时,它的删除会被反映出来

Git只是传递了一个事实,即删除发生在历史上的某个时刻,一旦您将两个分支合并在一起,这个事实就会顺利地转换过来(除非这个文件上有冲突)

合并后,您将声明这两个分支现在包含相同的信息,如果一个分支包含您不希望传递的信息,则必须对其进行寻址,最好是在该分支上

为此,导航到删除该文件的特定提交,并对其执行
git revert

git revert <sha>
git还原

如果该特定的恢复会改变周围的任何其他文件,那么可能首先应该与其他提交者讨论为什么该文件被删除。

关于这一点的某些内容没有意义

您描述的情况对于协作工作来说是相当标准的;一个文件可能会被删除,当您将该分支合并到另一个分支中时,它的删除会被反映出来

Git只是传递了一个事实,即删除发生在历史上的某个时刻,一旦您将两个分支合并在一起,这个事实就会顺利地转换过来(除非这个文件上有冲突)

合并后,您将声明这两个分支现在包含相同的信息,如果一个分支包含您不希望传递的信息,则必须对其进行寻址,最好是在该分支上

为此,导航到删除该文件的特定提交,并对其执行
git revert

git revert <sha>
git还原

如果该特定还原会更改周围的任何其他文件,然后,也许一个人应该首先与另一个提交人讨论为什么删除了该文件。

为什么不使用
将git merge
--no commit
合并,然后在提交之前再次从B签出删除的文件?它会在--no commit选项打开的情况下执行提交事件。也许我有一些配置错误?嘿,让我们投票否决一个解释清楚的问题!sigh为什么不在提交之前将git merge与
--no commit
合并,然后再次签出B中删除的文件?它在启用--no commit选项的情况下执行提交事件。也许我有一些配置错误?嘿,让我们投票否决一个解释清楚的问题!这就是我需要的。谢谢,这正是我需要的。谢谢