我无意间把错误的档案 写错给Git 基特,但还没有将承诺推进到服务器上。
我如何解除那些承诺?当地当地仓库?
我无意间把错误的档案 写错给Git 基特,但还没有将承诺推进到服务器上。
我如何解除那些承诺?当地当地仓库?
当前回答
撤销最后一次承诺的最简单方式是
git reset HEAD^
这将带来项目状态 之前,您已经做出承诺。
其他回答
如果您想要删除错误的文件, 您应该做
git reset --soft <your_last_good_commit_hash_here>
来,如果你来git status
中,您会看到中转区的文件。您可以选择错误的文件,然后从中转区取下来。
喜欢下面。
git reset wrongFile1 wrongFile2 wrongFile3
您现在可以添加您需要按键的文件,
git add goodFile1 goodFile2
提交提交它们
git commit -v
或git commit -am "Message"
推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推,推
git push origin master
但是,如果您不关心已更改的文件, 您可以硬重置到先前的良好承诺, 并将所有文件都推到服务器 。
由
git reset --hard <your_last_good_commit_hash_here>
git push origin master
如果您已经向服务器发布错误的文件, 您可以使用--force
挂号以向服务器推动并编辑历史。
git push --force origin master
另一种方式:
检查您想要返回的分支, 然后将本地工作副本重置到您想要在远程服务器上成为最新一份的承诺( 它将在离别后进行的一切) 。 要做到这一点, 请在 SupportTree I右键点击并选中的“ 重置 BranchNAME 以进行此承诺 ” 。
然后导航到仓库的本地目录并运行此命令 :
git -c diff.mnemonicprefix=false -c core.quotepath=false push -v -f --tags REPOSITORY_NAME BRANCHNAME:BRANCHNAME
这将删除您本地仓库中当前一个后的所有承诺, 但只删除该分支 。
如果你犯下了破案 但没有被逼
git reset --soft HEAD~1
总部~1是在头部前的一小节。或者,您可以参考SHA-1(SHA-1)。如果您要重置,则要重置。-- 软选项将删除承诺, 但它会保留您更改的所有文件“ 更改待执行” , 如 Git 状态所显示 。
如果您想要删除工作树中跟踪文件的任何更改, 因为在头使用前要执行此任务 " 。--- 硬" 相反。
或
如果你已经推了,有人拉了拉了 通常是我的案子,你不能用git 重设。但是,你可以做一个git 返回 git 返回,
git revert HEAD
这将产生新的承诺, 扭转意外行为带来的一切。
有许多方法可以做到:
撤消上次执行/ 上一个承诺的 Git 命令 :
警告 :不使用 - 硬 如果你不知道自己在做什么, 硬就是太硬危险,它可能会删除您的文件 。
返回 Git 中的承诺的基本命令是 :
$ git reset --hard <COMMIT -ID>
或
$ git reset --hard HEAD~<n>
协调会 协调会:承诺的代号
n:您想要返回的上次承诺的数
您可以获取下列承诺代号:
$ **git log --oneline**
d81d3f1 function to subtract two numbers
be20eb8 function to add two numbers
bedgfgg function to multiply two numbers
何 地d81d3f1 d81d3f1和贝多208执行 ID。
现在,让我们来看看一些案例:
假设您想要返回上次的“ d81d3f1 ” 。 这里有两个选项 :
$ git reset --hard d81d3f1
或
$ git reset --hard HEAD~1
假设您想要还原“ ebe20eb8” 承诺 :
$ git reset --hard be20eb8
欲了解更详细的信息,请参考并尝试其他命令,将头重置为指定状态:
$ git reset --help
你需要做简单快的动作
git commit --amend
是私人分行还是私人分行
git commit -m 'Replace .class files with .java files'
如果它是共享的或公共的分支。