Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我必须--强制我的git提交_Git_Git Push - Fatal编程技术网

为什么我必须--强制我的git提交

为什么我必须--强制我的git提交,git,git-push,Git,Git Push,我已经设置了几个git存储库,每次我设置一个新的存储库并执行第一次提交和推送时,这个命令都会使git push origin master失败,并且我得到一些错误信息,说明它如何推送一些引用失败 ----@--------- /c/git/repo/---- (master) $ git push origin master -------------------------------- -------------------------------- To -----------------

我已经设置了几个git存储库,每次我设置一个新的存储库并执行第一次提交和推送时,这个命令都会使git push origin master失败,并且我得到一些错误信息,说明它如何推送一些引用失败

----@--------- /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上创建了一个新项目,或者你总是推到同一个远程设备上?对于新项目,我创建了一个新的远程设备。