git使用的几个问题

git使用的几个问题,git,Git,假设我创建了一个分支,然后合并到master中,然后意识到出了问题。合并前如何恢复到 假设我创建一个分支,处理它,然后进行合并并分配冲突。如果我不想处理它,现在就让新的分支成为主分支,我该怎么做 git checkout <desired branch> git branch -d master git branch -m <desired branch> master 顺便问一下,你在网上看到的关于真实GIT使用模式的最佳教程是什么 如果它没有被推送,请检查主

假设我创建了一个分支,然后合并到master中,然后意识到出了问题。合并前如何恢复到

  • 假设我创建一个分支,处理它,然后进行合并并分配冲突。如果我不想处理它,现在就让新的分支成为主分支,我该怎么做

  • git checkout <desired branch>
    
    
    git branch -d master
    
    
    git branch -m <desired branch> master
    
    顺便问一下,你在网上看到的关于真实GIT使用模式的最佳教程是什么

  • 如果它没有被推送,请检查主机,然后使用上次良好提交的名称使用
    git reset--hard
    。或者,使用reflog:
    HEAD@{1}
    将带您回到以前的位置。如果它被推送,请使用git revert创建一个包含更正的新提交
  • 签出主机,然后使用git reset--hard mybranch。这使得master指向与mybranch相同的提交,本质上是放弃了master上的所有工作,因为分支发生了分歧。再说一次,如果《大师》的作品被公之于众,把它扔掉是个坏主意
  • 对于合并
    git reset--hard
    就足够了,对于重定基址,您必须执行
    git-rebase--abort
  • 假设我创建了一个分支,然后合并到master中,然后意识到出了问题。合并前如何恢复到

  • 如果您没有推到主线上,或者已经推过,并且绝对确定没有其他人从主线上拉过,那么请执行以下操作:

    git reset——硬头~N(N是您希望返回的提交数。)

  • 如果你已经推过,或者不能确定没有其他人没有拉过,那么承认你的错误并采取以下行动:

    git还原

  • 假设我创建一个分支,处理它,然后进行合并并分配冲突。如果我不想处理它,现在就让新的分支成为主分支,我该怎么做

    git checkout <desired branch>
    
    
    git branch -d master
    
    
    git branch -m <desired branch> master
    
    git签出
    git分支-d主
    git branch-m master
    
  • 顺便问一下,你在网上看到的关于真实GIT使用模式的最佳教程是什么

  • 如果合并后不希望提交,则正确的命令是

    git reset --hard HEAD@{1}
    
    这意味着将分支重置到以前的位置(阅读{}语法-通过阅读git reflog可以获得大部分信息)
    HEAD^1
    也可以,但是您必须知道您正在指定当前提交的第一个父级

    如果您已推送此提交,请小心通知所有人。如果您没有能力在共享存储库中通信将来强制更新的分支,请不要这样做

  • 正确的方法是再次合并,但这次从新分支合并,并指定只需要您的一方。“他们的”策略已被否决

    git merge -s ours master
    
    然后将master更新到另一个分支所在的位置:

    git checkout master
    git merge --ff-only otherbranch
    
    或者,因为您知道这将是一个快进合并(上面只是一个安全检查),所以您可以只将主机更新为当前提交,而无需将其签出:

    git update-ref refs/heads/master HEAD
    
    你可以继续在你的分支机构工作。如果要使用master,请使用前面的命令

  • 以下是一些我觉得有用的链接:

    其他来源:

    你也可以在twitter上找到我的同一个ID


  • 它没有指定它是否被推送。这对主分支来说是一种暗示。但是好的。