我有两个分支master和bugfix。我的当前分支是bugfix,在那里我已经提交了我的更改(没有推送),现在我需要重置这个提交。如果我重置我的提交,会影响master分支中的其他提交吗?
master
bugfix
实际上我想删除此提交。
git reset --soft 734e3a0
我正在使用SourceTree。
w41d8nur1#
简单
这将丢弃您提交的更改(未推送)。它不会影响master分支中的任何内容。
35g0bw712#
您需要在git reset --soft HEAD~1终端源树中运行此命令此命令在源树中推回您提交然后您获取最新拉取,然后您可以提交您代码
git reset --soft HEAD~1
kr98yfug3#
如果您尚未将代码推送到远程,则可以按照以下步骤恢复更改,如图所示。但请先备份更改1.转到SourseTree终端2.执行命令git reset HEAD~然后转到文件状态并检查。
git reset HEAD~
hgb9j2n64#
首先你要问自己你想做什么。reset是干什么的?我假设你想***undo***你的更改。这样做你有几个选择,你可以在这里阅读详细信息:
reset
undo
如何将磁头移回之前的位置?(分离的磁头)
它将详细解释在每个选项中要做什么。
你必须设置你的HEAD指向一个新的(或旧的)提交。上面的帖子会告诉你,会教你做什么,会告诉你几个选择。
kr98yfug5#
我不认为执行git reset --soft会影响任何提交,它只会影响你的分支。如果你想恢复提交734e3a0,那么你可以尝试使用git revert:
git reset --soft
734e3a0
git revert
git revert 734e3a0
这将指示Git添加一个新的提交,该提交将撤销734e3a0原来所做的操作。注意,如果该提交位于分支的中间,这是一个很好的选择,对于历史记录已经公开的分支也是一个很好的选择。
5条答案
按热度按时间w41d8nur1#
简单
这将丢弃您提交的更改(未推送)。它不会影响master分支中的任何内容。
35g0bw712#
您需要在
git reset --soft HEAD~1
终端源树中运行此命令此命令在源树中推回您提交然后您获取最新拉取,然后您可以提交您代码kr98yfug3#
如果您尚未将代码推送到远程,则可以按照以下步骤恢复更改,如图所示。但请先备份更改
1.转到SourseTree终端
2.执行命令
git reset HEAD~
然后转到文件状态并检查。
hgb9j2n64#
首先你要问自己你想做什么。
reset
是干什么的?我假设你想***
undo
***你的更改。这样做你有几个选择,你可以在这里阅读详细信息:如何将磁头移回之前的位置?(分离的磁头)
它将详细解释在每个选项中要做什么。
你必须设置你的HEAD指向一个新的(或旧的)提交。
上面的帖子会告诉你,会教你做什么,会告诉你几个选择。
kr98yfug5#
我不认为执行
git reset --soft
会影响任何提交,它只会影响你的分支。如果你想恢复提交
734e3a0
,那么你可以尝试使用git revert
:这将指示Git添加一个新的提交,该提交将撤销
734e3a0
原来所做的操作。注意,如果该提交位于分支的中间,这是一个很好的选择,对于历史记录已经公开的分支也是一个很好的选择。