我无意间把错误的档案 写错给Git 基特,但还没有将承诺推进到服务器上。

我如何解除那些承诺?当地当地仓库?


当前回答

简单, 在命令行运行此操作 :

git reset --soft HEAD~ 

其他回答

git push --delete (branch_name) //this will be removing the public version of your branch

git push origin (branch_name) //This will add the previous version back

典型基周期

在前几次答复中谈到与Git相关的命令时,我想向所有读者介绍我典型的Git周期,这可能是有益的。 这就是我如何与Git合作,

  1. 第一次从远程服务器克隆

    git clone $project

  2. 从远程拉动( 当我没有当地未完成的推动承诺) )

    git pull

  3. 将新的本地文件 1 添加到 $to_ be_ compent_ list (想象$to_ be_ compent_ list 意思是staged区域)

    git add $file1

  4. 删除从 $to_be_ composed_ list 错误添加的文件2( 假设文件2 与第 3 步一样添加, 我并不想这样做 )

    git reset $file2

  5. 正在提交 $to_ be_ compent_ list 中的文件1

    git commit -m "commit message description"

  6. 在推进前与远程仓库同步本地承诺

    git pull --rebase

  7. 冲突发生时的解决配置合并工具

    git mergetool #resolve merging here, also can manually merge

  8. 添加冲突解决文件file1:

    git add $file1

  9. 继续我先前的重新基地指挥

    git rebase --continue

  10. 启动已同步的本地最后一次任务已就绪

    git push origin head:refs/for/$branch # branch = master, dev, etc.

在我的情况中,我承诺并推向错误的分支, 所以我想要的是把全部的改变都收回来, 这样我就可以把它们投向一个新的正确的分支, 所以我做了这个:

在您承诺和推动的同一分支上, 如果您输入“ gitt status” 键入“ git status” 状态, 您将不会看到任何新事物, 因为您承诺和推动, 现在键入 :

    git reset --soft HEAD~1

这将将您所有的更改( 文件) 重新回到舞台区域, 现在把它们重新回到工作目录( 非阶段) 中, 您只要输入 :

git reset FILE

“ 文件” 是您想要再次承诺的文件 。 现在, FILE 应该在工作目录中, 包含您所做的全部更改 。 现在您可以更改为您想要的分支, 并对该分支进行更改 。 当然, 您承诺的初始分支仍然有所有更改, 但对于我来说, 如果不是您的话, 您可以寻找恢复该分支承诺的方法 。

我发现这笔该网站描述如何撤销您在存储库中的承诺 。

一些命令 :

git commit --amend        # Change last commit
git reset HEAD~1 --soft   # Undo last commit

(2015年等)

如果你在视觉工作室无法同步, 因为不允许你按到像“开发”那样的分支, 那么和我想的一样多, 在视觉工作室NEITHE莱弗特( REVERT)努尔战 地 方(硬的或软的)将有效。

答案是用数字标注的:

使用此命令命令 根 你的项目根 核武器 任何试图 被推推:

git reset --hard HEAD~1

备份或拉链你的文件 只是以防你不想失去任何工作,等等...