Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 52在主人身后_Git_Bitbucket - Fatal编程技术网

Git 52在主人身后

Git 52在主人身后,git,bitbucket,Git,Bitbucket,我在本地存储库中做了一些更改,并在远程分支中推送了这些更改。当我为这些更改创建拉取请求时,我注意到该分支包含了我对主机所做的所有提交,可以追溯到3个月前。我还得到一条信息,我是“52提交在主机后面”,我假设这是因为我的代码没有与主机合并(请让我知道,如果我在这个假设中是错误的)。我只希望最新的提交转到我创建的分支。我考虑的一个选项是将特定提交推送到一个新分支,然后针对主分支创建一个PR,但似乎所有提交都将推送到特定提交,除非我使用rebase更改顺序 我想知道更好的选择是什么,使用rebase同

我在本地存储库中做了一些更改,并在远程分支中推送了这些更改。当我为这些更改创建拉取请求时,我注意到该分支包含了我对主机所做的所有提交,可以追溯到3个月前。我还得到一条信息,我是“52提交在主机后面”,我假设这是因为我的代码没有与主机合并(请让我知道,如果我在这个假设中是错误的)。我只希望最新的提交转到我创建的分支。我考虑的一个选项是将特定提交推送到一个新分支,然后针对主分支创建一个PR,但似乎所有提交都将推送到特定提交,除非我使用
rebase
更改顺序

我想知道更好的选择是什么,使用
rebase
同步提交或更改顺序,然后只将特定提交推送到本地分支

任何帮助都将不胜感激 注意:我最近开始使用git(bitbucket),我正在努力掌握它,不想把公司代码搞得一团糟,所以这个问题很有可能没有意义


我尝试将最新提交推送到远程分支,但它似乎将所有提交推送到最新提交。其中一个选项是使用
重新基址
,但我不确定我是如何做的,是否应该使用它。

这取决于您的需要。如果你只想把你的承诺推给主人, 最安全的方法是使用
cherry pick
从您的分支到主分支。这是非常安全的,因为你不必用力推

  • 查找提交哈希:
    git日志
  • 签出到主控台:
    git签出主控台
  • 如果您使用的是上游分支,请使用master
    git pull
    git pull上游master
    重新对齐
  • 检查您是否与master:
    git status
    对齐
  • 没有提交的Cherry pick:
    git Cherry pick-n
  • 提交:
    git提交-m
  • 在按下之前检查日志:
    git log
    。您还可以检查差异:
    git-diff-origin/master
  • 推送至主机:
    git推送

  • 您只需使用简单的重新基准注释来更新本地回购

    git pull--rebase--autostash

    有时您会遇到合并冲突,不要担心,您可以手动解决该冲突,并使用
    git-rebase——继续


    “52在master之后提交”这是因为您的本地存储库不是最新的。

    那么,您是创建了另一个分支还是只在master上工作?@VaTo,我已经创建了一个新分支,我正在处理它。嘿@yahavi,谢谢您的建议。我尝试了相同的方法,但它似乎仍然显示分支中的所有提交。我还尝试按照bitbucket的建议“现在同步”,它要求我运行命令“git merge remotes/origin/master”,即使在做了必要的更改之后,我仍然可以获得分支中的所有提交。