【问题标题】:Git ! [rejected]吉特! [被拒绝]
【发布时间】:2014-08-12 03:02:00
【问题描述】:

我正在学习 Rails,我是 Git 新手。我昨天从 Git 下载了我最后一次提交的 zip 文件,因为我把我的项目弄得一团糟,想回溯(现在我感觉这不是处理它的方法)。无论如何 - 我如何将我更新的项目与原始项目合并?这就是 Git 告诉我的。

 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@github.com:xxxxxx/xxxxx.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

【问题讨论】:

  • 在你 git push 之前做一个 git pull。
  • 执行git pull 合并更新。
  • @vee 我做了一个 git pull ,这就是我得到的:当前分支没有跟踪信息。请指定要合并的分支。详见 git-pull(1)
  • 您没有指定上游,您可以在git pull 之前使用git branch --set-upstream-to=origin/master master 设置它,或者在git pull 中使用git pull origin master 指定远程分支。

标签: git


【解决方案1】:

远程存储库已经包含一些更改(可能是通过 web ui 或昨天进行的?)按照建议执行“git pull”。 如果您想丢失本地更改,可以删除本地存储库并执行 'git clone ...'

【讨论】:

    【解决方案2】:

    执行git fetch,然后执行git rebase。在这种情况下,合并不会污染历史。如果您有未提交的更改,您可以使用git stash 将其保存在一边。完成 fetch & rebase 后,您可以使用 git stash pop 将其返回。

    【讨论】:

    • 原始发布者也可以在获取后也可以git merge,而不是进行变基,当然这可能会或可能不会导致不同的提交历史图表。
    猜你喜欢
    • 2020-08-23
    • 2013-08-07
    • 2017-08-08
    • 2014-08-10
    • 1970-01-01
    • 1970-01-01
    • 2012-03-07
    • 2016-06-24
    • 1970-01-01
    相关资源
    最近更新 更多