gpt4 book ai didi

git - 为什么我必须 --force 我的 git 提交

转载 作者:太空狗 更新时间:2023-10-29 14:39:51 27 4
gpt4 key购买 nike

我设置了几个 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 origin master 它有效,为什么会这样,为什么我每次都必须这样做?

最佳答案

这个错误...

 ! [rejected]        master -> master (non-fast-forward)

...意味着远程存储库中有您的存储库中还没有的更改。如果您在 GitHub 上创建存储库,如果您要求 GitHub 使用 .gitignoreREADME 文件预填充您的存储库,则可以创建一个非空存储库。

无论如何,当你看到这个错误时,你应该运行:

git pull

这将带来任何更改并将它们 merge 到您的本地存储库中,此时 git push 应该可以正常工作。

如果您不确定那里有什么,您也可以将远程存储库克隆到另一个目录并检查它的内容。

关于git - 为什么我必须 --force 我的 git 提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11764133/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com