2016-11-30 8 views
0

Я сделал фиксацию в VS2015, но я еще не нажал ее. Затем я сделал выборку с расширением Git, и я могу видеть, что я 2 коммита за удаленной ветвью. Но Git Extension не показывает мне мою локальную фиксацию. Когда я выполняю поиск после хэша commit в Git Extension, он также не находит его. Зачем?Почему другая программа не видит мою локальную (непроверенную) фиксацию?

git status также показывает только, что я заработал за удаленной веткой. git log @{u}.. ничего не показывает на консоли. git log origin/master..HEAD только показывает фиксации от старого извлеченного пульта.

Я хотел сделать rebase, но теперь я не знаю, если это хорошая идея, если Git Extension не может видеть мою локальную фиксацию.

+0

Кто такой «он» в этом сценарии? –

+0

«he» = Git Extension – testing

+0

Прошу прощения за этот вопрос, но вы уверены, что работаете в одной папке? Вы используете одну ветку? – Ivan

ответ

1

Попробуйте использовать git reflog, чтобы увидеть изменения в истории вашего репозитория.

Если вы не можете найти свою фиксацию там - убедитесь, что у вас нет двух копий репозитория в разных местах.

+0

Нет, это была та же копия. Но вы были очень полезны! Если вас интересует решение, см. Мой ответ. – testing

0

git reflog показывает мне:

1d63279 [email protected]{0}: checkout: moving from 9af729af1fbb639a5616528a31e7773f99f564d3 to refactor 
9af729a [email protected]{1}: commit: My missing commit 
1d63279 [email protected]{2}: checkout: moving from 0e302fee7cbb0ba1306a75e024e324291e3e361f to 1d6327972bd9ac1a585d947e634b69f891a78325 
0e302fe [email protected]{3}: checkout: moving from refactor to 0e302fee7cbb0ba1306a75e024e324291e3e361f 
1d63279 [email protected]{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 

Теперь все должно быть в порядке, и я могу работать дальше. Но я не знаю, что происходит со старым фиксатором.

 Смежные вопросы

  • Нет связанных вопросов^_^