为什么我必须--强制我的git提交
我已经设置了几个git存储库,每次我设置一个新的存储库并执行第一次提交和推送时,这个命令都会使git push origin master失败,并且我得到一些错误信息,说明它如何推送一些引用失败为什么我必须--强制我的git提交,git,git-push,Git,Git Push,我已经设置了几个git存储库,每次我设置一个新的存储库并执行第一次提交和推送时,这个命令都会使git push origin master失败,并且我得到一些错误信息,说明它如何推送一些引用失败 ----@--------- /c/git/repo/---- (master) $ git push origin master -------------------------------- -------------------------------- To -----------------
----@--------- /c/git/repo/---- (master)
$ git push origin master
--------------------------------
--------------------------------
To -----------------------------
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/-----/----.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
然而,如果我做一个git push-force原点主控器,它会工作,为什么会这样,为什么每次我都要这么做?这个错误
! [rejected] master -> master (non-fast-forward)
…意味着远程存储库中的更改尚未包含在您的存储库中。如果您要在GitHub上创建存储库,如果您要求GitHub使用.gitignore或自述文件预先填充存储库,则可以创建非空存储库
在任何情况下,如果您看到此错误,而不是使用-force覆盖远程存储库中的任何更改,您可能只需运行:
git pull
这将关闭所有更改并将它们合并到本地存储库中,此时git推送应该可以正常工作
您还可以将远程存储库克隆到另一个目录,如果您不确定其中有什么内容,则可以检查其内容。此错误
! [rejected] master -> master (non-fast-forward)
…意味着远程存储库中的更改尚未包含在您的存储库中。如果您要在GitHub上创建存储库,如果您要求GitHub使用.gitignore或自述文件预先填充存储库,则可以创建非空存储库
在任何情况下,如果您看到此错误,而不是使用-force覆盖远程存储库中的任何更改,您可能只需运行:
git pull
这将关闭所有更改并将它们合并到本地存储库中,此时git推送应该可以正常工作
您还可以将远程存储库克隆到另一个目录,如果您不确定其中有什么内容,则可以检查其内容。您要推送到的存储库似乎不是空的。每次强制推送提交时,都会覆盖服务器上的任何内容,但不会覆盖本地PC上的任何内容。对此我会小心。这正是我所担心的,但我确信我创建的repo没有任何文件,而且仍然..你正在推送github。您是否真的在github上创建了一个新项目,或者您总是推送到同一个远程位置?对于新项目,我创建了一个新远程位置。看起来您推送到的存储库不是空的。每次强制推送提交时,都会覆盖服务器上的任何内容,但不会覆盖本地PC上的任何内容。对此我会小心。这正是我所担心的,但我确信我创建的repo没有任何文件,而且仍然..你正在推送github。你是否真的在github上创建了一个新项目,或者你总是推到同一个远程设备上?对于新项目,我创建了一个新的远程设备。