Git尝试撤消所有更改,但最终在拉操作中合并
我有未提交的更改,我想完全撤销,并使我的工作区与远程主机相同。然而,当从master Git中提取最新代码时,执行了一次合并,我不明白为什么/我做错了什么 我运行了以下命令:Git尝试撤消所有更改,但最终在拉操作中合并,git,Git,我有未提交的更改,我想完全撤销,并使我的工作区与远程主机相同。然而,当从master Git中提取最新代码时,执行了一次合并,我不明白为什么/我做错了什么 我运行了以下命令: git status 这显示了未老化的更改和新文件 git reset --hard HEAD~1 后跟要拉取的内部脚本,该脚本执行以下操作: git checkout master git pull origin master 但在拉动过程中发生了合并 我做错了什么/下次我应该做些什么 我有未提交的更改,我想完全撤
git status
这显示了未老化的更改和新文件
git reset --hard HEAD~1
后跟要拉取的内部脚本,该脚本执行以下操作:
git checkout master
git pull origin master
但在拉动过程中发生了合并
我做错了什么/下次我应该做些什么
我有未提交的更改,我想完全撤销,并使我的工作区与master相同
要消除未提交的更改,请执行以下操作:
git重置——硬头
。我的别名是git clear
要使您的工作区与本地主工作区相同,请执行以下操作:
git签出主机
要使本地主机与远程主机相同,请执行以下操作:
# Update origin
git fetch origin
git checkout master
git reset --hard origin/master
git重置——硬头~1
是个错误。它撤消最近的提交。我把它化名为git undo
您可以通过检查git reflog
(头部如何变化的记录)并查找以下内容来恢复:
b84779fe (HEAD -> master) HEAD@{5}: reset: moving to HEAD^
08d4b01b HEAD@{6}: commit: that commit you undid
第一行显示撤消。第二个显示commit-it-undid。所以git重置——硬08d4b01b
但在拉动过程中发生了合并 这表示您的本地主机和远程主机存在分歧。通常是因为您向本地主机进行了提交,而其他人向远程主机推送了提交
git pull
是一个git fetch
来更新远程跟踪分支(即原始/主分支)和一个git merge
来合并来自远程分支的更改
下面是这两个步骤的样子
# Your local repository is out of date with origin.
origin
A - B - C - D - E [master]
local
A - B - C [origin/master]
\
F - G [master]
# Bring it up to date
$ git fetch origin
local
A - B - C - D - E [origin/master]
\
F - G [master]
# Merge in the new changes from origin/master to master.
$ git merge origin/master master
local
A - B - C - D - E [origin/master]
\ \
F - G - M [master]
这是我鼓励让师父一个人呆着的原因之一。所有的开发都应该在其中进行,然后进行审查、测试并合并到master中。我们能看到git log的相关部分吗?graph--装饰--一行--所有的吗?当你说“与master相同”时,你是指你的本地master还是远程master?@Schwern我指的是remote。我只是想“重新开始”