2014-10-25 3 views
-2

Теперь я следующие структуры GIT хранилища:Как в git перейти к пересмотру и ничего не потерять?

enter image description here

Теперь я найти в revision #6

Я хочу, чтобы перейти к revision #1

Я боюсь сделать что-то, потому что я не хочу к потерянным исправлениям 2,3,4,5,6.

Пожалуйста, помогите мне решить эту проблему.

P.S.

Я использую tortoise git или intellij-idea для git Управление.

+0

Итак, вы в настоящее время находитесь в ветке ветки, и голова этой ветви находится на обороте 6, справа. 'git checkout master' вернет вас хозяину в ревизии 1. Затем' git checkout branch' вернется к ветке. –

+0

git.exe checkout master - terminal-company/src/main/java/com/terminal/dao/impl/TerminalDaoImpl.java: требуется слияние terminal-company/src/main/webapp/WEB-INF/pages /member/createCompany/addTerminal.jsp: требуется слияние ошибка: вам нужно сначала решить свой текущий индекс – gstackoverflow

+0

. Каков результат 'git status'. Отправьте его в свой вопрос. –

ответ

-1

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

git stash
git checkout master
[do some stuff]
git checkout [branch]
git stash apply --index

Вы вернулись туда, где вы были

Если вы совершили, то вам не нужно копить, просто оформления заказа мастера, а затем оформления заказа филиала, как только вы сделали все, что нужно на мастер

+0

[сделайте что-нибудь] - что за материал? – gstackoverflow

+0

любые изменения, которые вы хотите внести с помощью мастера - вы можете внести изменения в мастер, а затем вернуться в свою ветку. Затем ветка должна быть объединена обратно в мастер в какой-то момент, чтобы объединить все изменения в мастер – velvetytoast

+0

Не знаю, почему вы даете -1 для этого. Он точно отвечает на вопрос - все, что вам нужно сделать, это мастер проверки, но это также защищает вас от потери любой незавершенной работы – velvetytoast

0

Вы можете оформить муравей случайную версию с помощью команды

 
git checkout SHA1 

Поскольку те коммиты; это означает, что они совершены вами. В этом случае вы можете восстановить их охвата коммитов командой

 
git reflog 
git checkout SHA1 

Если те, совершены некоторые еще и вы вытягивали их вы можете сбросить ветку (скажем, мастер) следующим образом

 
git fetch 
git reset --hard master origin/master 
+0

, так что он совершенно новый для git, и вы рекомендуете состояние отдельной головы и жесткие сбрасывания? Это бессмысленно. –

+0

Сэр, точка взята, является ли мой ответ некорректным? – forvaidya

+0

Это зависит от того, думаете ли вы, что OP спрашивает, как идти в оторванную голову на SHA1 (мне кажется маловероятным, что это была их цель). Кроме того, часть reflog неверна, я полагаю, вы имели в виду 'git log' –