Я новичок в Git и использую плагин EGit eclipse для фиксации.
Я изменил несколько файлов и спрятал изменения, затем сделал git pull
в командной строке, которая подтянула все последние коммиты. Потом сделал Apply stashed changes
из EGit. Теперь он применил мои изменения, и изменения, извлеченные из последней фиксации спрятанных файлов, исчезли. Я не уверен, почему он не спросил меня о конфликтах слияния, перезаписал мои изменения и потерял предыдущие изменения коммитов.
Как получить эти изменения?
git stash list
чтобы показать его.Ответы:
Когда у вас есть изменения в вашей рабочей копии, из командной строки выполните:
Это сохранит ваши изменения и очистит отчет о состоянии.
Это приведет к изменениям из ветки восходящего потока. Убедитесь, что в отчете написано «Ускоренная перемотка вперед». Если это не так, вы, вероятно, делаете непреднамеренное слияние.
Это применит сохраненные изменения обратно к рабочей копии и удалит изменения из тайника, если у вас нет конфликтов. В случае конфликта они останутся в тайнике, чтобы вы могли начать все сначала.
если тебе нужно посмотреть, что у тебя в тайнике
источник
git stash && git pull && git stash pop
git rebase origin/master
что даст такой же результат, какgit stash; git pull; git stash pop
?git pull --rebase --autostash
. К вашему сведению--autostash
всегда работает? Например, если у меня есть неотслеживаемые файлы, которые частично уже находятся в Git?