我们遇到了一个非常奇怪的问题,这个问题很难解释,我会尽我所能来说明。
Andy提交并推送文件中的更改
build.ps1
.
Bob提交其他文件,并提取。
鲍勃有些矛盾。Git告诉他
有变化,我觉得奇怪,因为只有安迪改变了,但好吧,为什么不呢。
Bob修复了冲突,然后知道他没有更改此文件,在合并提交之前取消暂存它。他不该那么做,但我想知道接下来会发生什么。
问题是这样做会将文件恢复到以前的状态,并且明显地删除了文件的提交。
a213826
是鲍勃试图合并的承诺;
b2067fa
安迪的承诺消失了
81bcc94
> git log --pretty=format:'%h - %d %s (%cd) <%an>' --abbrev-commit
* 753c504 - (HEAD) ... (10/17/18 10:19:52) <Clark>
... other commits
* 81bcc94 - Merge (10/16/18 18:53:09) <Bob>
* b2067fa - build file (10/16/18 17:19:32) <Andy>
... other commits
* a213826 - members selection (10/16/18 17:35:46) <Bob>
... other commits
在
,我们可以看到Bob更改了一些文件:
> git show --name-status a213826
commit a2138265ba464afed6955f7a2976b9d868c6449e
Author: Bob
Date: Tue Oct 16 17:35:46 2018 +0200
members selection
M Viewer3D.DataAccess/DataAccess.cs
M Viewer3D.DataAccess/IDataAccess.cs
M Viewer3D/Content/view-panel.css
M Viewer3D/Controllers/DirectoryController.cs
M Viewer3D/Controllers/NotesController.cs
M Viewer3D/Scripts/class-panel.js
M Viewer3D/Scripts/view-panel-note-form.js
M Viewer3D/Views/Home/_PanelNotes.cshtml
在
,我们可以看到,在合并中,Bob解决了一些冲突,但是
构建.ps1
文件尚未修改:
> git show --name-status 81bcc94
commit 81bcc94cbe26859ca6b02d2908f6afc64aec1701
Merge: a213826 b2067fa
Author: Bob
Date: Tue Oct 16 18:53:09 2018 +0200
Merge
MM Viewer3D.DataAccess/DataAccess.cs
MM Viewer3D.DataAccess/IDataAccess.cs
MM Viewer3D/Content/view-panel.css
MM Viewer3D/Controllers/NotesController.cs
MM Viewer3D/Scripts/view-panel-note-form.js
然而,乌龟Git讲述了一个完全不同的故事,并展示了
构建.ps1
git log
,的
提交不再出现:
> git log -p -- .\build_psake.ps1
commit 2d5eef1d1a13508621afe99bad8a2af05f3cc298
Author: Andy
Date: Tue Sep 4 15:25:12 2018 +0200
changes build path
(some diff)
commit 23dd900f71e88053b333b886491a2b5a9b971291
Author: Clark
Date: Mon Jun 18 09:19:34 2018 +0000
...
但是,如果我们
log --follow
> git log --follow -p -- .\build_psake.ps1
commit b2067fac01e9b8d8ee4d6a88a91f4fd994efdf9e
Author: Andy
Date: Tue Oct 16 17:19:32 2018 +0200
build file
(some diff)
commit 2d5eef1d1a13508621afe99bad8a2af05f3cc298
Author: Andy
Date: Tue Sep 4 15:25:12 2018 +0200
changes build path
....
所以,我的问题是:
-
-
是什么使提交从文件的“简单日志”中消失,而不在“跟踪日志”中?
-
请帮我弄明白这一切!