Flu*_*ine 306 git git-rebase
跑步时我得到以下内容 git status
Your branch is ahead of 'origin/master' by 3 commits.
Run Code Online (Sandbox Code Playgroud)
我已经阅读了其他一些帖子,修复此问题的方法是运行,git pull --rebase但究竟什么是rebase,我会丢失数据还是这种与master同步的简单方法?
ibe*_*beu 661
您收到该消息是因为您在本地主服务器中进行了更改,而您没有将它们推送到远程服务器.您有几种方法可以"解决"它,通常取决于您的工作流程如何:
git push origin假设origin是您的远程git reset --hard origin/masterpmr*_*pmr 37
没有什么可以解决的.您只是进行了3次提交,但尚未将它们移动到远程分支.根据您的要求,有几种选择:
git push:将更改移动到远程(如果遥控器上已有其他更改,则可能会被拒绝)git pull:从远程获取更改(如果有)并将它们合并到您的更改中git pull --rebase:如上所述,但尝试在远程更改之上重做您的提交你处于一个经典的情况(虽然通常你不会在大多数工作流程中对master有很多贡献).以下是我通常会做的事情:查看我的更改.也许git rebase --interactive在他们身上做一些化妆品,丢掉那些吮吸,重新排序,使它们更合乎逻辑.现在将它们移动到遥控器上git push.如果由于我的本地分支不是最新的而被拒绝:git pull --rebase在最近的更改之后git push再次重做我的工作.
Abh*_*oel 29
第1步:git checkout <branch_name>
进入那个分支是显而易见的.
第2步 :git pull -s recursive -X theirs
如果发生冲突,请进行远程分支更改并替换其更改.在这里,如果你这样做,git status你会得到这样的东西,你的分支在3个提交之前超过'origin/master'.
第3步 :git reset --hard origin/<branch_name>
第4步 :git fetch
硬重置您的分支.
请享用.
Bit*_*tor 17
我在Bitbucket上合并了一个pull请求后遇到了这个问题.
不得不做
git fetch
Run Code Online (Sandbox Code Playgroud)
就是这样.
Syl*_*sne 11
此消息git表示您已在本地master存储库中进行了三次提交,并且尚未将它们发布到存储库.为此运行的命令是git push {local branch name} {remote branch name}.
当你在本地仓库中没有远程仓库的提交时,命令git pull(和git pull --rebase)用于另一种情况.该--rebase选项意味着git将您的本地提交移到一边,与远程仓库同步,然后尝试从新状态应用您的三个提交.如果存在冲突,它可能会失败,但随后会提示您解决它们.rebase如果您不知道如何通过使用解决冲突,也可以中止,git rebase --abort并在运行之前返回状态git pull --rebase.
Ale*_*lex 10
通常,如果我必须检查哪些提交与我的主人不同:
git rebase -i origin/master
Run Code Online (Sandbox Code Playgroud)
通过这种方式,我可以看到提交并决定放弃或选择...
如果你的 git 说你提前提交了,那么首先,
git push 原点
确保你已经在 repo 中推送了你所有的最新工作
然后,
git reset --hard origin/master
重置并匹配 repo
小智 5
在我合并 Bitbucket 上的拉取请求后,我就发生过一次这种情况。
我只需要这样做:
git fetch
我的问题解决了。我希望这有帮助!!!
| 归档时间: |
|
| 查看次数: |
326906 次 |
| 最近记录: |