Dark_SS 26.04.2012 21:22
Есть вопрос! — Отменить действие комманды git commit -a
Частенько я вбиваю сабж, забыв о том, что временно перенёс какие-то файлы. В результате git считает их удалёнными и коммитит это. Как отменить последний локальный коммит? Изменять файлы не нужно.git revert HEAD создаёт противоположный коммит, откатывая изменения в файлах.
git reset я не понял. Вроде как git add он отменил, но в git log коммит последний значится.
Ну вот: git reset --soft HEAD в ссылке которая выше, все четко сказано: this is most often done when you remembered what you just committed is incomplete, or you misspelled your commit message, or both. Leaves working tree as it was before "reset". Если коротко и по нашенски, то если что-то забыл (как ты в данном случае), то юзай выше указанное.
Мы например работаем в ветках и если что - git checkout <�имя файла> из master ;)
странное поведение - отменяешь коммит (например тупо не пишешь коммент для него и git не коммитит) - ставишь файлы обратно - неважно как и опять - git commit -a
я видимо не очень понимаю
я видимо не очень понимаю
Я уже сделал git commit -a, файл пометился к удалению. Задача -- отменить.
[20:56:43] ascrazy_: settler, ему не коммит
[20:57:02] ascrazy_: ему нужно затреканые файлы убрать из vcs
[20:57:03] Bazett: Заголовок: Git undo last commit - Stack Overflow
[20:57:14] ascrazy_: вот это хз даже
[20:57:15] ascrazy_: как
[20:57:21] DarkneSS: И убранные вернуть.
[20:57:33] DarkneSS: Что важнее для меня.
[20:57:48] settler: у git reset есть пару опций
[20:58:06] DarkneSS: settler, Я пробовал все кроме --hard.
[20:58:34] * Raiden покинул комнату
[20:58:39] settler: DarkneSS: значит пора попробовать --hard
[20:58:49] settler: только бекап сделай)
[20:58:50] DarkneSS: settler, Там очевидно не то.
[20:58:57] DarkneSS: Внесутся изменения в файлы.
[20:59:34] ascrazy_: DarkneSS, я не совсем понял что ты хочешь
[20:59:47] ascrazy_: что значит убранные вернуть?
[21:00:04] DarkneSS: ascrazy_, После git commit -a файл, которого нет в папке, помечается как удалённый.
[21:00:17] DarkneSS: И это потом пушнется.
[21:00:27] settler: DarkneSS: сделай просто git reset HEAD~1
[21:00:33] DarkneSS: Вот этого я не хочу.
[21:00:47] settler: состояние файлов должно остаться, но коммит из индекса удалится
[21:00:59] DarkneSS: settler, Ша затестим
[21:01:17] settler: --soft оставляет даже индекс
[21:03:16] DarkneSS: settler, Ура!
[21:03:21] DarkneSS: Похоже, что так
[21:03:51] settler: DarkneSS: там второй коммент на стековерфлоу хорошо объясняет)