我无意中把错误的文件给了Git, 但还没有把承诺推到服务器上。

我如何从当地存储库撤销这些承诺?


当前回答

您可以使用 git 返回 < tomit- id> 。

为了得到身份证明,请使用git日志。

其他回答

引用: 如何撤销 Git 中的最后一次承诺 ?

如果您已经安装了 Git 扩展名, 您可以很容易撤销/ 撤销任何任务( 您可以从这里下载 Git 扩展名 ) 。

打开 Git 扩展名, 右键单击您想要返回的承诺, 然后选择“ 回溯承诺 ” 。

将打开弹出( 见下文截图)

选择“自动创建一项承诺”,如果您想要直接进行已恢复的更改,或者如果您想要手动进行已恢复的更改,则保留未选中的框,单击“撤销此承诺”按钮。

使用 reflog 查找正确状态

git reflog

安全前的路线

选择正确的 reflog( 以我为例, f3cb6e2) 和类型

git reset --hard f3cb6e2

在那之后 重置总部将重置 重置后,HEADLOGED

最终, 折叠图看起来像下面的图片

谈判最后定本

你需要做简单快的动作

    git commit --amend

是私人分行还是私人分行

    git commit -m 'Replace .class files with .java files'

如果它是共享的或公共的分支。

如果您是和SourceTree合作, 这会帮助您 。

在承诺上右键点击, 然后选择“ 重置( 当前分支) / master 到此承诺 ” , 最后选择“ 软” 重置 。

认为我们已经有了 code. txt 文件。 我们对其做了一些修改并承诺。 我们可以以三种方式撤销此承诺, 但首先, 您应该知道什么是预置文件... 一个预设文件是一个可以承诺的文件。 如果您运行 git 状态, 此文件将会显示为绿色颜色, 如果它没有被预设用于承诺, 将会显示为红色颜色 :

意思是如果您承诺更改, 此文件中的更改没有被保存 。 您可以在您的舞台上添加此文件, 添加 code. txt , 然后进行更改 :

撤消上次承诺 :

现在,如果我们想要在不做其他任何更改的情况下撤销承诺, 我们可以使用 git 重设 -- soft HEAD * 如果我们想要撤销承诺及其更改( THIS 是危险的, 因为您的更改将会丢失) , 我们可以使用 git 重置 -- 硬 HEAD * 如果我们想要撤销承诺并删除舞台上的更改, 我们可以使用 git 重置 -- mixed HEAD* 或短格式的 git 重置 HEAD***