我刚刚做了一个
git commit -m "blah"
然后我添加了一些文件,我如何回滚并删除我当前文件中尚未添加/提交的内容?
qvtsj1bj1#
编辑的答案-随着时间的推移进行了编辑,以便更有帮助买者自负- * 前方有毁灭性命令 *缓解措施-git reflog * 可在您需要时为您提供帮助。*
git reflog
1.UNDO本地文件更改和KEEP上次提交git重置--硬1.UNDO本地文件更改和REMOVE上次提交git重置--硬HEAD^1.保留本地文件更改并删除上次提交git重置--软HEAD^
ffscu2ro2#
如果你想删除新添加的内容和已经暂存的文件(因此添加到索引中),那么你用途:
git reset --hard
如果你也想删除你最近的一次提交(是带有消息“blah”的那个),那么最好用途:
git reset --hard HEAD^
要删除未跟踪的文件(即尚未添加到索引的新文件)和文件夹,请用途:
git clean --force -d
9o685dep3#
如果你只想取消最后一次提交,使用这个:
git reset HEAD~
对我来说就像魅力。
6ss1mwsb4#
git reset --hard将强制工作目录返回到上次提交并删除新的/更改的文件。
vsaztqbk5#
撤消本地文件自上次提交以来的更改的简单方法是将它们放置在新分支中:
git branch changes git checkout changes git add . git commit
这会将更改保留在新分支中。返回原始分支,发现它回到最后一次提交:
git checkout master
新分支是一个很好的地方,可以练习不同的方法来恢复更改,而不会有弄乱原始分支的风险。
zpjtge226#
你可以使用git revert HEAD^来还原一个提交,以还原到倒数第二个提交。你也可以使用id而不是HEAD^来指定要还原的提交。
git revert HEAD^
6条答案
按热度按时间qvtsj1bj1#
编辑的答案-随着时间的推移进行了编辑,以便更有帮助
买者自负- * 前方有毁灭性命令 *
缓解措施-
git reflog
* 可在您需要时为您提供帮助。*1.UNDO本地文件更改和KEEP上次提交
git重置--硬
1.UNDO本地文件更改和REMOVE上次提交
git重置--硬HEAD^
1.保留本地文件更改并删除上次提交
git重置--软HEAD^
ffscu2ro2#
如果你想删除新添加的内容和已经暂存的文件(因此添加到索引中),那么你用途:
如果你也想删除你最近的一次提交(是带有消息“blah”的那个),那么最好用途:
要删除未跟踪的文件(即尚未添加到索引的新文件)和文件夹,请用途:
9o685dep3#
如果你只想取消最后一次提交,使用这个:
对我来说就像魅力。
6ss1mwsb4#
git reset --hard
将强制工作目录返回到上次提交并删除新的/更改的文件。vsaztqbk5#
撤消本地文件自上次提交以来的更改的简单方法是将它们放置在新分支中:
这会将更改保留在新分支中。返回原始分支,发现它回到最后一次提交:
新分支是一个很好的地方,可以练习不同的方法来恢复更改,而不会有弄乱原始分支的风险。
zpjtge226#
你可以使用
git revert HEAD^
来还原一个提交,以还原到倒数第二个提交。你也可以使用id而不是HEAD^来指定要还原的提交。