首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Github分支领先5个提交,如何修复?

Github分支领先5个提交,如何修复?
EN

Stack Overflow用户
提问于 2012-12-03 15:17:33
回答 3查看 4.1K关注 0票数 1
代码语言:javascript
复制
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

C:\Users\Allen\Documents\GitHub\project2-pd7 [master]> git status
# On branch master
# Your branch is ahead of 'origin/master' by 5 commits.
#
nothing to commit, working directory clean
C:\Users\Allen\Documents\GitHub\project2-pd7 [master]> git push
Counting objects: 36, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (30/30), 3.93 KiB, done.
Total 30 (delta 8), reused 1 (delta 0)
error: unpack failed: index-pack abnormal exit
To https://github.com/stuycs-ml7/project2-pd7.git
 ! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'https://github.com/stuycs-ml7/project2-pd7.git'

我仍然在尝试使用github寻找自己的航向,但这些持续不断的问题让我苦不堪言。有人能用普通的语言解释一下解决方案吗?这样我就能理解了。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-03 15:31:35

你班上的其他学生在你最后一次结帐/拉出后推了一些修改。

正如hd1所指出的,您最好的选择是使用git pull,这可能会创建一个合并提交,之后您可能必须显式地git commit合并。在运行git push之前,我更喜欢使用git pull --rebase对更改进行线性化

从命令行运行git log --graph可以很好地可视化本地存储库的当前状态。

执行git fetch以拉下远程分支,而不尝试合并或重新设置当前更改的基址。这将允许您使用git log --graph origin/master检查远程存储库的状态

票数 1
EN

Stack Overflow用户

发布于 2012-12-03 21:25:41

您的历史记录与远程分支的历史记录不一致。自从您上次使用git pull以来,可能有人已经将提交推送到远程分支。解决方案是:

代码语言:javascript
复制
git pull

代码语言:javascript
复制
git pull --rebase

后者尝试重写您的提交,以便它们出现在分支的顶部,重新基于远程分支的历史记录。前者在您的远程分支的历史记录之间进行简单的合并。

票数 2
EN

Stack Overflow用户

发布于 2012-12-03 15:21:07

git push之前尝试git pull

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13678793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档