假设我们开始
// file
Foo
Bar
它将Foo
移动到一个新文件foo
和Bar
到一个新文件bar
。
现在主人改变了
// file
Foo123
Bar
而PR现在有一个合并冲突。当我做一个rebase我也得到了冲突,这就是它在magit中的样子。
我如何知道Foo
改为Foo123
?在这么简单的情况下,它应该不难,但考虑到file
是几千个地方,PR在那里坐了一个月,其他人改变了file
。
我的apporach非常容易出错,当我遇到一个已删除的文件时,我会查看触及该文件的所有提交,然后相应地复制粘贴更改,然后使用git rm file
删除该文件,但当然我有时会忽略一些更改。当然必须有更好的方法吗?
您可以使用
git show --name-status
查看已重命名或复制的内容。如果识别出更多命令重命名会更好,但是git show --name-status
(及其等效的git log --no-walk --name-status
)确实可以识别它们。