Проблемът ми е, че промених файл, напр.: README, добавих нов ред „това за моя тестов ред“ и записах файла, след което издадох следните команди
git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: README
#
no changes added to commit (use "git add" and/or "git commit -a")
git add README
git commit -a -m 'To add new line to readme'
Не изпратих кода в github, сега искам да отменя този ангажимент.
За това използвах
git reset --hard HEAD~1
Но загубих новодобавения ред „това за моя тестов ред“ от файла README. Това не трябва да се случва. Имам нужда съдържанието да е там. Има ли начин да запазя съдържанието и да анулирам локалния си ангажимент?
git revert
, което създава нов ангажимент с обратната разлика на върнатия комит. Нулирането просто насочва текущия ви клон към различен ангажимент, в този случай този преди ангажимента, който искате да забравите. - person Cascabel   schedule 31.01.2011git-commit
може да прекъсне, ако оставите съобщението празно, така че ако всъщност не сте завършили ангажимента, това може да бъде полезно. - person GKFX   schedule 24.02.2014