我已经在VS2015做了一个提交,但我还没推迟。然后我用Git Extension进行了一次获取,我可以看到,我在远程分支后面提交了2次提交。但是Git Extension并没有向我展示我的本地提交。当我在Git Extension中的提交哈希之后搜索时,他也找不到它。为什么呢?
git status
也只向我显示我在远程分支后面的两次提交。
git log @{u}..
在控制台上没有显示任何内容。
git log origin/master..HEAD
仅显示旧获取的遥控器的提交。
我想做一个改变,但现在我不知道这是不是一个好主意,如果Git Extension无法看到我的本地提交。
答案 0 :(得分:1)
尝试使用<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/css/select2.min.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/js/select2.min.js"></script>
<h1>Demo</h1>
<select id="optioner" class="select2">
<option value="fake1">Fake 1</option>
<option value="fake2">Fake 2</option>
</select>
<input id="doit" type="button" value="Real It Up">
查看本地存储库中的历史记录更改。
如果你在那里找不到你的提交 - 检查你在不同的地方没有两个存储库副本。
答案 1 :(得分:0)
git reflog
告诉我:
1d63279 HEAD@{0}: checkout: moving from 9af729af1fbb639a5616528a31e7773f99f564d3 to refactor
9af729a HEAD@{1}: commit: My missing commit
1d63279 HEAD@{2}: checkout: moving from 0e302fee7cbb0ba1306a75e024e324291e3e361f to 1d6327972bd9ac1a585d947e634b69f891a78325
0e302fe HEAD@{3}: checkout: moving from refactor to 0e302fee7cbb0ba1306a75e024e324291e3e361f
1d63279 HEAD@{4}: commit: My old commit
所以我似乎在此期间检查了一个特殊提交并进行了处理。我的解决方案是制作patch。
// create patch
git format-patch -1 9af729af1fbb639a5616528a31e7773f99f564d3
// show stats
git apply --stat 0001-My-Commit-Message.patch
// check for error before applying
git apply --check 0001-My-Commit-Message.patch
// three-way merge and apply the patch
git am -3 < 0001-My-Commit-Message.patch
现在一切都会好的,我可以继续努力。但我不知道旧提交会发生什么。