假设我有分支A和B.在A中有一些文件被删除。现在A被合并到B中,我希望在合并后将其存在于B中。最简单的方法是什么?
答案 0 :(得分:3)
如果(无论出于何种原因)--no-commit
确实不适合您,请继续进行合并。然后,执行git checkout head~ path/to/file
。然后,执行commit --amend
。这将修改合并提交,使其与合并前的分支B中的已删除文件一样。
答案 1 :(得分:1)
关于这一点的事情没有意义。
您描述的情况非常适合协作工作;一个文件可能会被删除,当你将该分支合并到另一个分支时,会反映出它的删除。
Git只是简单地传达了这样一个事实:删除发生在历史的某个时刻,一旦你将两个分支合并在一起,这个事实就会顺利翻译(除非这个文件发生冲突)。
合并后,您说这两个分支现在包含相同的信息,如果一个分支有您不想传达的信息,您必须解决它,最好是在该分支上。
要执行此操作,请导航到删除该文件的特定提交,然后在其上执行git revert
。
git revert <sha>
如果那个特定的revert会改变任何其他文件,那么可能应该首先讨论为什么文件被其他提交者删除了。