撤消git中几个没有推送到远程的提交

Was*_*uel 25 git github

我已经运行了git status

# On branch master
# Your branch is ahead of 'origin/master' by 4 commits.
#   (use "git push" to publish your local commits)
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   app/views/layouts/_header.html.erb
#
no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)

我希望在提交到我的远程存储库之前撤消所有4次提交和更改未提交的提交.我怎样才能做到这一点?

nte*_*rry 36

您还可以运行以下命令重置为遥控器的HEAD:

git reset --hard <REMOTE>/<BRANCH_NAME>
Run Code Online (Sandbox Code Playgroud)

例如:

git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)


Kla*_*urn 26

这将丢弃工作树中的所有本地更改以及最近的四个提交:

git reset --hard HEAD~4
Run Code Online (Sandbox Code Playgroud)