Git:无法解决母版与原件/母版之间的差异

时间:2019-03-25 08:43:09

标签: git github

我最近更改了将代码托管在Github上的代码,并使用以下代码将其部署到了我的实时网站上:

git pull origin master

原点设置为https://github.com/myname/myproject的地方。

一切正常,除了git status,它显示:

# On branch master
# Your branch is ahead of 'origin/master' by 74 commits.
#   (use "git push" to publish your local commits)

这是不正确的-我没有进行任何需要发布的提交。如果我尝试使用git diff master origin/master查看详细信息,则会看到列出的大量文件。但是,我看不到这些更改的来源:拿一个我很熟悉的文件并查看它的历史记录,我可以看到git log所示的版本与应查看的版本完全相同。 Github。

我尝试过的无效的东西:

git fetch origin master:master

我希望这能将远程主服务器带入本地主服务器。但这对状态没有影响。

git reset --hard origin/master

这实际上是通过检出其他版本的代码破坏了我的网站。我不知道我必须进行紧急git pull origin master才能恢复,这(很幸运)使系统恢复了正常工作,但我的状态仍处于不稳定状态。

有人可以帮忙吗?

顺便说一句,我现在读到使用git pull作为部署机制被认为是危险的,但是我真的不明白为什么,而且我还没有找到一种明显更好的方法来实现。 Github上下文-我愿意接受建议!

(根据评论进行了更新:这是对git remote show origin的回答:)

* remote origin
  Fetch URL: https://github.com/myname/myproject
  Push  URL: https://github.com/myname/myproject
  HEAD branch: master
  Remote branches:
    fixes8p03 tracked
    fixes8p07 tracked
    master    tracked
    rfc2188   new (next fetch will store in remotes/origin)
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)

1 个答案:

答案 0 :(得分:1)

您的远程origin/master分支没有更新,并且落后于本地master分支。他们没有分歧,但是远程分支比本地分支落后74个。您有两种选择:

如果本地分支中的新更改是有意进行的,只需将其推送到origin/master

git push origin master

如果由于任何原因不希望更改,可以将master分支重置为其远程状态。这意味着您用master覆盖了origin/master注意,您将丢失之前所做的所有74项更改

git reset --hard origin/master