我是git和github的新手,在将一些更改推入GitHub repo时面临这个问题

enxuqcxy  于 2023-10-14  发布在  Git
关注(0)|答案(3)|浏览(149)
! [rejected]        main -> main (fetch first)
error: failed to push some refs to 'https://github.com/jayasimhag1reddy/timpass.git'
hint: Updates were rejected because the remote contains work that you do not
hint: have locally. This is usually caused by another repository pushing to
hint: the same ref. If you want to integrate the remote changes, use
hint: 'git pull' before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
6pp0gazn

6pp0gazn1#

你需要理解GIT的基本概念,即如果你不同步,你不应该将更改推送到远程存储库。
当然,你可以用force-git push -f来做,但结果是你在本地没有的工作将从服务器上删除,因为你“强迫”服务器接受你的更改,而不“获取”其他人所做的修改。

为什么要拉?

  • 在本例中,您从C2创建了一个分支。
  • 当你还在写你的代码时,别人已经把committedpushed(上传)到服务器上了,提交了你本地没有的C3C4**
  • 如果你要推送你的代码,你将**覆盖 * 服务器,你将 * 删除 * 那些提交
  • 为了将代码的本地副本(分支)与服务器进行同步,您需要运行git pull,它实际上会为您执行git fetch && git merge

一个非常详细的解释可以在这里找到:
https://git-scm.com/book/id/v2/Git-Branching-Remote-Branches

iqjalb3h

iqjalb3h2#

Git的回应告诉你答案:“提示:'git pull' before pushing again”.
你需要做一个

$ git pull

$ git fetch
$ git merge

在git服务器(这里是github)上获取更改。

lvjbypge

lvjbypge3#

仓库在不同的本地设备上有不同的提交。您可以合并提交或返回到上一个提交,其中提交开始不同。

相关问题