Git ahead(超前) 又behind(落后)

Git ahead(超前) 又behind(落后)

在 Git 项目中,多人共用同一分支开发,执行命令git branch -vv查看分支状态,会发现分支经常是类似于ahead 2, behind 1的状态。

1、解释

截图如下:

image-20210414113531388

以 prod 分支为例,ahead 2 意味着 prod 本地分支有两次 commit 还没推送到远程分支,behind 1 表示远程分支的一次 commit 没有合并到 prod 本地分支。故此 prod 分支会变成超前又落后的状态。

2、执行命令

假设现在 prod 本地分支为 1-2,远程分支为1-3。那么现在需要做的事情是拉取远程分支代码,与本地进行合并再推送到远程分支。

执行命令如下:

# 合并远程分支代码
git merge

# 如果有冲突则解决,然后commit,没有则忽略此步骤
git commit -am "解决冲突"

# 推送远程仓库
git push 

此时prod 本地分支变为 1-2-3',3'3内容相同,但hash值不同。

至此,分支状态便正常了。

posted @ 2021-04-14 14:07  MyDistance  阅读(4616)  评论(0编辑  收藏  举报