完整的信息:

error: Ref refs/remotes/origin/user is at 3636498c2ea7735fdcedc9af5ab3c8689e6abe77 but expected a21359c6cc2097c85775cde6a40105f4bd7100ec
From github.com:{github project url}
 ! a21359c..6273ffc  user -> origin/user  (unable to update local ref)

当前回答

我运行这个来解决问题:

git gc --prune=now

其他回答

试试这个,对我很管用。 在您的终端:git远程修剪原点。

如果你在一个不区分大小写的文件系统(Windows或OS X)下运行git,如果有两个同名但大写不同的分支,就会发生这种情况,例如user_model_changes和user_model_changes,因为两个远程分支将匹配相同的跟踪引用。

删除错误的远程分支(你不应该有只有大小写不同的分支),然后git远程删除原点,一切都应该正常工作

我也有同样的问题,因为我重置到一个旧的提交,即使我已经推送到远程分支。

我通过删除我的本地分支,然后签出原始分支git checkout origin/my_branch,然后执行git checkout my_branch来解决这个问题

Git for-each-ref——format='delete %(refname)' refs/original | Git update-ref——stdin Git reflog expire—expire=now—all Git gc -prune=现在

我遇到过这个问题,我的解决方案如下:

步骤1:

请先执行该命令。 git gc—Prune=现在

步骤2:

如果运行步骤1命令后没有错误,则在终端中运行下面的命令。 git远程删除源文件

我希望这能解决你的问题。