猿问

Git的历史记录中有修改,但最后的结果是错的,有可能是什么原因呢?

真实文件太大,简化大概是这样:

版本0: 有一文件a.txt,里面有一句比较有特征的行,整个文件只有这一处,并无重复,假设是old

版本1: 在这个commit中有人将old改成了new

版本2(最终版): 在该文件中,old处仍然是old

这里的三个版本仅仅是举例用,实际上的commit都隔了很远很多个别的commit,且并不是单一分支,有各种merge操作。

我想搞清楚为什么版本1的改动没有纳入版本2,于是git log -p a.txt >> log.txt,随后在log.txt文件中查找old, 只能找到一处改动:

- old+ new

以及一处最早的添加:

+ old

也就是说在一个commit中修改过了的东西,并没有反映到最终的文件里去

请问出现这种情况的可能原因有哪些,该如何排查?


慕哥9229398
浏览 562回答 1
1回答

呼唤远方

试试使用 gui 查查看?gitk 路径/文件名又或者用 git blame 看看 old 这个地方哪里来的。
随时随地看视频慕课网APP
我要回答