我想将我的代码发送到我的远程存储库,但是从我的Git控制台推送时出现问题。
添加完所有内容后,我输入我的https 密钥:
git remote add origin https://github.com/...
稍后需要push ,所以我输入:
git push origin master
但我得到以下伴随错误的信息:
到https://github.com/myUser/myRepo.git
![rejected] master -> master (fetch first)
error: failed to push some refs to ' https://github.com/ ...'
提示:更新被拒绝,因为远程包含你做的工作
提示:本地没有. 这通常是由另一个存储库推送
提示引起的:to the same ref. 您可能希望
在再次推送之前先集成远程更改提示:(例如,'git pull ...')。
提示:有关详细信息,请参阅“git push --help”中的“关于快进的说明”。
它告诉我我在本地没有它,所以我输入:
git remote --v
看看它是否指向远程仓库(因为我想不出任何解决方案)并且确实它指向它。
它不会让我将我的代码 从本地传递到远程。
有谁知道发生了什么或我做错了什么?
我希望你能帮助我。太感谢了。
正如错误消息告诉您的那样,这通常是因为您在本地存储库中的代码与远程存储库中的代码不同。首先,您必须更新本地存储库以考虑
commits
远程存储库中发生的更改(),修复冲突,然后它将允许您上传代码。几个要点:
git clone
则不需要git remote add
手动执行它应该已经配置。git remote add
创建添加更改的本地 git 存储库时经常使用。接下来,您在 GitHub 或任何其他服务器上创建一个远程空存储库。并且您想将本地代码上传到远程仓库。在这种初始情况下,您应该永远不会遇到任何问题push
git push -f referencia_remota referencia_local
git clone
git checkout -b mi_rama_local
我正在处理的本地分支并向该分支添加提交,直到功能或错误得到解决。master
和git checkout master
你带来了远程中可能存在的变化git pull
git checkout mi_rama_local
并将新的主更改与git rebase master
. 可以这么说,这将使 master 中的更改低于您当前的更改。这可以防止空的“合并”提交。一些团队喜欢让这些提交知道它何时被集成,而另一些则不。我觉得它们特别烦人。这就是我这样做的原因。git merge mi_rama_local
git push origin master
如果您一直直接在 master 上工作,有些人认为这是不好的做法,您可以尝试将远程更改直接放在本地更改之下
git pull --rebase
,解决冲突,然后执行git push
你只需要在你推之前拉,以防有冲突在你推之前纠正它。
启动 git 时的方法论。
现在出于爱好,您可以执行以下操作:
要退出 Git 日志,请按“Q”
随着时间的推移,你会习惯的。
在
git push
总是这样做之前,但你应该总是这样做git pull
,如果有任何冲突,你必须手动修复它们,并且那些有冲突的文件你必须重新添加它们。