我在运行git status时得到以下结果
git status
Your branch is ahead of 'origin/master' by 3 commits.
我在其他一些帖子上读到过修复这个问题的方法是运行git pull --rebase,但到底是什么是rebase,我会丢失数据吗,或者这是与主同步的简单方法?
git pull --rebase
没有什么可以解决的。您只是进行了3次提交,还没有将它们移动到远程分支。有几个选项,取决于你想做什么:
git push
git pull
您处于典型的情况(尽管通常在大多数工作流中您不会在master上投入很多)。下面是我通常会做的事情:检查我的更改。也许可以做一个git rebase --interactive来修饰它们,去掉那些糟糕的,重新排序让它们更有逻辑。现在用git push将它们移动到遥控器上。如果这被拒绝,因为我的本地分支不是最新的:git pull --rebase重做我的工作在最近的变化和git push再次。
git rebase --interactive
这条来自git的消息意味着您已经在本地repo中进行了三次提交,并且还没有将它们发布到master存储库。要运行的命令是git push {local branch name} {remote branch name}。
git
master
git push {local branch name} {remote branch name}
命令git pull(和git pull --rebase)用于其他情况,即在远程回购上有提交,而在本地回购中没有。--rebase选项意味着git将把本地提交移到一边,与远程回购同步,然后尝试从新状态应用您的三个提交。如果有冲突,它可能会失败,但随后会提示您解决它们。如果您不知道如何通过使用git rebase --abort来解决冲突,您也可以终止rebase,并在运行git pull --rebase之前返回到状态。
--rebase
git rebase --abort
rebase
您会收到这条消息,因为您在本地主服务器中进行了更改,而没有将它们推到远程。你有几种方法来“解决”;它通常取决于你的工作流是怎样的:
git push origin
git reset --hard origin/main
# eyz1: # eyz0
这是很明显的分支。
硬重置你的分支。
享受。
我在Bitbucket上合并了一个pull请求后遇到了这个问题。
不得不做
git fetch
就是这样。
有一次我在Bitbucket上合并了一个pull请求,我就遇到了这种情况。
我只需要做:
# EYZ0
我的问题解决了。我希望这对你有帮助!!
通常,如果我必须检查哪些提交与主提交不同,我会这样做:
git rebase -i origin/master
通过这种方式,我可以看到提交,并决定放弃它或选择…
如果你的git说你提前提交,那么只是 首先,< / p >
Git推源
确保你已经把你所有的最新工作在回购
然后,
Git重置-硬源/主
重置和匹配回购
我有这个问题,我使用'git重置-硬起源/主',没有引号,将我的本地主基到远程主分支。