Git 合并重命名文件的分支

Git merge branches with renamed files

提问人:Alok 提问时间:11/6/2023 最后编辑:Alok 更新时间:11/6/2023 访问量:72

问:

我们有两个分支,一个是主要分支,另一个是开发分支。 我们对开发分支进行更改,并定期将其与 main 合并。 在我最近的更改中,我在开发分支中进行了一些文件重命名并提交了这些(使用 mv file_old file_new然后使用 git add),git 也将其作为重命名。 现在,在将开发分支合并到 main 时(使用 git merge development --no --ff),我看到 main 分支既重命名了文件,也重命名了较旧的文件。

有没有更好的方法可以让我们在合并后只拥有较新的文件(重命名的文件)而不使用较旧的文件?

发展处

mv file_old file_new
git add .
git commit

总公司

git merge development
git git-merge 文件重命名

评论

1赞 Alok 11/6/2023
没有合并冲突,我只是在合并后看到主分支中存在两个文件
0赞 Paolo 11/6/2023
使用合并策略时,我无法使用 git 在本地重现此内容ort
0赞 j6t 11/6/2023
您一定做了一些您没有告诉我们的其他事情,因为通常要么毫无怨言地选择重命名,要么会产生合并冲突。git merge
0赞 eftshift0 11/6/2023
我觉得这个描述很腥。根据我的经验,如果文件被移动时没有冲突,您可能会正确检测到移动,并且文件将在合并期间被移动......或者,如果文件内容在移动它的分支中发生了太大的变化,以至于 Git 无法检测到它实际上被移动了(在合并期间),您将得到删除。
0赞 eftshift0 11/6/2023
您能否将以下命令输出添加到问题中? 和(注意它是三点而不是双点)。git diff --name-status branch1...branch2 -- the-original-filegit diff --name-status branch2...branch1 -- the-original-file.....

答: 暂无答案