我运行了git状态,它告诉我一切都是最新的,没有本地更改。
然后我做了几次连续的改变,意识到我想扔掉一切,回到原来的状态。这个命令能帮我吗?
git reset --hard HEAD
我运行了git状态,它告诉我一切都是最新的,没有本地更改。
然后我做了几次连续的改变,意识到我想扔掉一切,回到原来的状态。这个命令能帮我吗?
git reset --hard HEAD
当前回答
简单地执行-
git stash
它将删除所有本地更改。您也可以稍后通过执行-
git stash apply
其他回答
我遇到了类似的问题。解决方案是使用gitlog来查找本地提交的版本与远程提交的版本不同。(例如,版本为3c74a11530697214cbcc4b7b98bf7a65952a34ec)。
然后使用git reset-hard 3c74a11530697214cbcc4b7b98bf7a65952a34ec还原更改。
前方危险:(请阅读评论。执行我的回答中提出的命令可能会删除更多内容)
完全删除所有文件,包括我必须运行的目录
git clean -f -d
要还原对工作副本所做的更改,请执行以下操作:
git checkout .
或者等效地,对于git版本>=2.23:
git restore .
要还原对索引所做的更改(即您添加的更改),请执行此操作。警告:这将重置所有未推送的提交到master!:
git reset
要还原已提交的更改,请执行以下操作:
git revert <commit 1> <commit 2>
要删除未跟踪的文件(例如,新文件、生成的文件):
git clean -f
或未跟踪的目录(例如,新的或自动生成的目录):
git clean -fd
简单地执行-
git stash
它将删除所有本地更改。您也可以稍后通过执行-
git stash apply
两个简单步骤
git fetch origin
git reset --hard origin/master
或者如果您的git使用main而不是master,请使用以下命令:
git reset --hard origin/main