Git提交中RR状态的含义及获取重命名文件原文件名与新文件名的方法咨询
Git中提交状态RR的含义及获取重命名文件原名称的方法
首先,你看到的RR状态是合并提交中出现的重命名冲突标记,只会在Merge类型的提交里出现。原因是你合并的两个父提交(也就是输出里的4a71760和c14516d),两边都对目标文件执行了重命名操作,Git无法自动确定哪一个重命名是最终想要的,所以用RR来标记这种冲突性的重命名状态,而非单个提交里常规的R<相似度分数>格式。
接下来,要获取这个文件的原文件名和修改后的文件名,可以试试这几个方法:
- 查看合并的两个父提交的文件状态:分别执行以下命令查看每个父提交里的文件变化,对比后就能找到两边各自的重命名记录:
git show 4a71760 --name-status git show c14516d --name-status - 用git diff对比两个父提交的差异:针对目标目录执行diff,直接看到两边的文件重命名情况:
这里的git diff 9070d7d^1 9070d7d^2 -- rules/applications/nap-tom/^1和^2分别指代合并提交的第一个和第二个父提交。 - 追踪文件的重命名历史:用
git log --follow命令追踪当前文件的历史,它会自动跟随重命名记录,显示文件之前的名称:git log --follow --name-only --pretty=format: 9070d7d -- rules/applications/nap-tom/cortex-rule.yaml
内容的提问来源于stack exchange,提问作者patrikm96
相关产品推荐
相关产品推荐

