运行 git status
命令时我得到了以下输出:
Your branch is ahead of 'origin/master' by 3 commits.
我在其他帖子上读到解决这个问题的方法是运行 git pull --rebase
但是什么是 rebase,我会失去数据吗,还是这只是一种简单的与主分支同步的方法?
运行 git status
命令时我得到了以下输出:
Your branch is ahead of 'origin/master' by 3 commits.
我在其他帖子上读到解决这个问题的方法是运行 git pull --rebase
但是什么是 rebase,我会失去数据吗,还是这只是一种简单的与主分支同步的方法?
git push origin
(假设origin是您的远程)git reset --hard origin/main
git diff master origin/master
(即git diff local remote
)可以查看您将要删除的更改。 - Shanimalgit push origin master
将本地提交推送到源,然后当我运行 git status
时,仍然得到相同的输出,即“您的分支领先于'remote-branch-name/master' <some-number> 次提交。” - Rajith Gun Hewage步骤1 : git checkout <branch_name>
进入指定分支。
步骤2 : git pull -s recursive -X theirs
获取远程分支的更改,如果有冲突,则用它们的更改替换。
如果执行git status
命令,你将得到类似于your branch is ahead of 'origin/master' by 3 commits. 的输出。
步骤3 : git reset --hard origin/<branch_name>
硬重置你的分支。
步骤4 : git fetch
获取最新的远程分支。
享受吧。
没有需要修复的问题。你只是做了三个提交,但还没有将它们移动到远程分支上。根据你想要做什么,有几个选项:
git push
:将你的更改移动到远程(如果远程已经存在其他更改,可能会被拒绝)git pull
:从远程获取更改(如果有任何更改),并将它们合并到你的更改中git pull --rebase
:与上面相同,但尝试在远程更改之上重新执行你的提交你处于一个典型的情况中(虽然通常你不会在大多数工作流程中对主分支进行大量提交)。以下是我通常会做的事情:审查我的更改。也许会做一些 git rebase --interactive
使它们更美观,删除那些不好的,重新排列使它们更具逻辑性。现在使用 git push
将它们移到远程。如果这被拒绝,因为我的本地分支不是最新的:git pull --rebase
在最新的更改之上重新执行我的工作,然后再次 git push
。
git diff origin/master
查看本地分支与远程分支的差异。 - pmrgit fetch
就是这样了。
如果你的 Git 提示你有提交落后,那么首先执行:
git push origin
确保你已经将最新的工作推送到仓库中。
然后执行:
git reset --hard origin/master
以重置并与仓库匹配。
通常情况下,如果我需要检查与主分支不同的提交,则会执行以下操作:
git rebase -i origin/master
通过这种方式,我可以查看提交并决定是否放弃或选择...
git diff ...
魔法也不起作用。当我这样做时,它给了我 noop
作为唯一的提交,当我接受它时,现在我的分支与 origin/master 同步。因此,看起来与 origin/master 不同的提交实际上什么都没有。 - philo viverogit
发出的这个提示意味着你在本地代码库中有三次提交,但是还没有将它们发布到 master
仓库。相应的命令是 git push {local branch name} {remote branch name}
。
当远程代码库上有你本地代码库缺失的提交时,可以使用命令 git pull
(以及 git pull --rebase
)。选项 --rebase
表示 git
会先将你的本地提交暂存一边,然后同步远程代码库,并尝试将你的三次提交应用到新状态中。如果存在冲突,则操作可能失败,但是你将被提示解决冲突。如果不知道如何解决冲突,还可以通过 git rebase --abort
取消 rebase
操作并回到 git pull --rebase
前的状态。
我曾经在Bitbucket合并一个拉取请求之后遇到过这个问题。
我只需要执行以下命令:
git fetch
我的问题得到了解决。希望这能帮到你!