为什么另一个程序看不到我的本地(未按下)提交?

时间:2016-11-30 16:22:04

标签: git visual-studio-2015 git-extensions

我已经在VS2015做了一个提交,但我还没推迟。然后我用Git Extension进行了一次获取,我可以看到,我在远程分支后面提交了2次提交。但是Git Extension并没有向我展示我的本地提交。当我在Git Extension中的提交哈希之后搜索时,他也找不到它。为什么呢?

git status也只向我显示我在远程分支后面的两次提交。 git log @{u}..在控制台上没有显示任何内容。 git log origin/master..HEAD仅显示旧获取的遥控器的提交。

我想做一个改变,但现在我不知道这是不是一个好主意,如果Git Extension无法看到我的本地提交。

2 个答案:

答案 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

现在一切都会好的,我可以继续努力。但我不知道旧提交会发生什么。

相关问题