Git的推没,“非快速向前更新被拒绝”Git的推没,“非快速向前更新被拒绝”(Git push fa

2019-05-13 09:03发布

我已经通过Git的在线编辑我的git仓库。 之后,我试图把我的本地代码的变化,我得到了一个错误:

Git push failed, To prevent from losing history, non-fast forward updates were rejected.

我怎样才能解决这个问题?

Answer 1:

先拉的变化:

git pull origin branch_name


Answer 2:

--force添加到您的命令行,如果你确定要推。 例如,使用git push origin --force (我建议在命令行中,你会发现从其他用户使用命令行更多的支持也可能无法用SmartGit。)请参阅本网站的详细信息: HTTP:// help.github.com/remotes/



Answer 3:

前推,做底垫中选择一个git拉。 这将让你在网上进行(在你的起源)的变化和本地应用它们,然后加在它上面的局部变化。

git pull --rebase

现在,你可以把远程

git push 

欲了解更多信息,看看Git的解释重订和第3.6章的Git分支-衍合 。



Answer 4:

我遇到了同样的错误,只要加入“--force”的命令,它的工作原理

git push origin master --force


Answer 5:

我有同样的问题。
原因是,我的本地分行在某种程度上失去了追踪到远程副本。

git branch branch_name --set-upstream-to=origin/branch_name
git pull

并解决合并冲突,我能推。



Answer 6:

您可以添加--force-与租赁的命令,它会工作。

git push --force-with-lease

--force是破坏性的,因为它无条件地覆盖,不管你在本地的远程存储库。 但是--force-与租赁 ,确保您不会覆盖其他人的工作。

查看更多的信息在这里 。



Answer 7:

(一)解决方案的Netbeans 7.1:尝试拉。 这也可能会失败。 现在看看入日志(他们通常会立即显示在IDE)。 还有一个/多个行说:

“拉失败,原因是这个文件:”

搜索该文件,将其删除(前做一个备份)。 通常这是一个的.gitignore文件,这样你就不会删除代码。 重做推。 一切都应该现在正常工作。



Answer 8:

我哈得同样的问题。 我决心用

git checkout <name branch>
git pull origin <name branch>
git push origin <name branch>


Answer 9:

这是对我工作。 它可以git的文档中找到这里

如果你对你的期望,你的分支可以这样做:

git fetch origin
# Fetches updates made to an online repository
git merge origin YOUR_BRANCH_NAME
# Merges updates made online with your local work


Answer 10:

遇到同样的问题,解决它,运行下面git命令。

  • git pull {url} --rebase
  • git push --set-upstream {url} master

您必须先创建GitHub上的仓库。



Answer 11:

有时候,而从你的git采取拉,头部被分离。 您可以通过输入以下命令检查:

git branch 
  • (HEAD从8790704分离的)

    开发

这是更好地移动到您的分支,并采取从你们各自的分支新的牵引。

git checkout develop

git pull origin develop

git push origin develop


文章来源: Git push failed, “Non-fast forward updates were rejected”
标签: git github push