git 在源树中重置提交

8dtrkrch  于 2022-12-10  发布在  Git
关注(0)|答案(5)|浏览(153)

我有两个分支masterbugfix。我的当前分支是bugfix,在那里我已经提交了我的更改(没有推送),现在我需要重置这个提交。
如果我重置我的提交,会影响master分支中的其他提交吗?

实际上我想删除此提交。

git reset --soft 734e3a0

我正在使用SourceTree。

w41d8nur

w41d8nur1#

简单

  • 转到“源”树中“日志/历史记录”,
  • 选择要撤消的提交的上一个提交,然后
  • 右键单击并执行“* 重置此提交的当前分支 *”

这将丢弃您提交的更改(未推送)。它不会影响master分支中的任何内容。

35g0bw71

35g0bw712#

您需要在git reset --soft HEAD~1终端源树中运行此命令此命令在源树中推回您提交然后您获取最新拉取,然后您可以提交您代码

kr98yfug

kr98yfug3#

如果您尚未将代码推送到远程,则可以按照以下步骤恢复更改,如图所示。但请先备份更改

1.转到SourseTree终端
2.执行命令git reset HEAD~
然后转到文件状态并检查。

hgb9j2n6

hgb9j2n64#

首先你要问自己你想做什么。
reset是干什么的?
我假设你想***undo***你的更改。这样做你有几个选择,你可以在这里阅读详细信息:

如何将磁头移回之前的位置?(分离的磁头)

它将详细解释在每个选项中要做什么。


你必须设置你的HEAD指向一个新的(或旧的)提交。
上面的帖子会告诉你,会教你做什么,会告诉你几个选择。

kr98yfug

kr98yfug5#

我不认为执行git reset --soft会影响任何提交,它只会影响你的分支。
如果你想恢复提交734e3a0,那么你可以尝试使用git revert

git revert 734e3a0

这将指示Git添加一个新的提交,该提交将撤销734e3a0原来所做的操作。注意,如果该提交位于分支的中间,这是一个很好的选择,对于历史记录已经公开的分支也是一个很好的选择。

相关问题