我的问题是我更改了一个文件,例如:README,添加了新行“ this for my test line ”并保存了文件,然后发出了以下命令
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文件中丢失了新添加的行“ this fortest line ”。这不应该发生。我需要那里的内容。有没有办法保留内容并取消我的本地提交?
git-commit
如果将消息保留为空白,则可能会中止,因此,如果您尚未真正完成提交,则可能会有所帮助。
git revert
,它会使用已还原提交的反向差异创建一个新提交。重置只是将您当前的分支指向另一个提交,在这种情况下,就是您要“忘记”的提交之前的分支。