ref*_*tis 18 git version-control
我在一个月前做了一个提交,涉及我创建新的文件夹和子文件夹,并在我们之间移动我的源代码文件.我从那时起第一次浏览我的历史并且意识到git已经"丢失"了历史,因为原始文件被删除然后重新添加,我想 - 即当我在我的git GUI中查看文件时(它是根据NDA,所以我不能直接讨论它,但是例如,这个存储库也在GitHub上被破坏.GitHub清楚地显示它将提交检测为一系列动作.)它只显示每个文件的历史记录,当项目文件夹时被重组了.
在阅读了几个问题(获取Git以确认以前移动的文件,如何使git标记为已删除文件和将新文件作为文件移动?)之后,我比起初时更加迷失.从那些答案中听起来我根本无法解决这个问题?我真的很感激这里的任何帮助.
Gia*_*rdi 10
在Git中,没有文件移动的概念.
某些工具(如GitHub)会考虑包含已删除的名为X的文件和已创建文件移动的名为X的文件的提交.
根据Linus Torvalds的说法,文件移动只是重构的一个特例; 因此,Git不会以不同的方式对待它.与许多其他案例一样,这种特殊情况的处理留给了更高级别的工具(例如前端).
有关此主题的更多信息,请查看Linus Torvalds的答案.
据我所知你想要:
git log --follow some_file.cpp
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅http://git-scm.com/docs/git-log。我不确定这是否是你想要的;但对于 git,git 跟踪内容而不是文件。问题是确定该信息确实非常昂贵,并且假设通常您不需要它......