Git 52在主人身后
我在本地存储库中做了一些更改,并在远程分支中推送了这些更改。当我为这些更改创建拉取请求时,我注意到该分支包含了我对主机所做的所有提交,可以追溯到3个月前。我还得到一条信息,我是“52提交在主机后面”,我假设这是因为我的代码没有与主机合并(请让我知道,如果我在这个假设中是错误的)。我只希望最新的提交转到我创建的分支。我考虑的一个选项是将特定提交推送到一个新分支,然后针对主分支创建一个PR,但似乎所有提交都将推送到特定提交,除非我使用Git 52在主人身后,git,bitbucket,Git,Bitbucket,我在本地存储库中做了一些更改,并在远程分支中推送了这些更改。当我为这些更改创建拉取请求时,我注意到该分支包含了我对主机所做的所有提交,可以追溯到3个月前。我还得到一条信息,我是“52提交在主机后面”,我假设这是因为我的代码没有与主机合并(请让我知道,如果我在这个假设中是错误的)。我只希望最新的提交转到我创建的分支。我考虑的一个选项是将特定提交推送到一个新分支,然后针对主分支创建一个PR,但似乎所有提交都将推送到特定提交,除非我使用rebase更改顺序 我想知道更好的选择是什么,使用rebase同
rebase
更改顺序
我想知道更好的选择是什么,使用rebase
同步提交或更改顺序,然后只将特定提交推送到本地分支
任何帮助都将不胜感激
注意:我最近开始使用git(bitbucket),我正在努力掌握它,不想把公司代码搞得一团糟,所以这个问题很有可能没有意义
我尝试将最新提交推送到远程分支,但它似乎将所有提交推送到最新提交。其中一个选项是使用
重新基址
,但我不确定我是如何做的,是否应该使用它。这取决于您的需要。如果你只想把你的承诺推给主人,
最安全的方法是使用cherry pick
从您的分支到主分支。这是非常安全的,因为你不必用力推
git日志
git签出主控台
git pull
或git pull上游master
重新对齐git status
对齐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”,即使在做了必要的更改之后,我仍然可以获得分支中的所有提交。