当前位置: 首页 > 知识库问答 >
问题:

git推送[duplicate]出错

朱经武
2023-03-14

我和我的朋友,我们正在制作某种项目,我们将GIT用于我们的版本控制软件,但是在我从gitlab中提取他的代码,并进行了一些更改并提交了这些更改后,我想推回gitlab,但是当那时,这个警告和错误:

warning: redirecting to https://gitlab.com/Sanady/project.git/
To https://gitlab.com/Sanady/project
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://gitlab.com/Sanady/project'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

有什么办法吗?我试图通过f旗(强制)推动回购,但仍然不起作用。。。

共有2个答案

安坚诚
2023-03-14

此错误意味着您的朋友在拉取时间和提交更改时间之间提交了一些更改。

因此,您需要首先拉动更改,解决冲突,然后才能推动:

git pull
# resolve conflicts (see git status)
git commit # commit merge
git push # now it works
鲁博雅
2023-03-14

假设没有权限问题之类的(我不熟悉gitlab),

看起来您的朋友也将更改提交给了master,因此您的本地更改不包括他的工作。所以应该先执行以下操作:

// Note, make sure you don't have uncommitted files:
git status 
// now run the following:
git pull --rebase

这将拉动您朋友的更改,并将您的本地提交放在上面。请注意,如果您和您的朋友正在接触相同的文件,您可能会遇到“冲突解决”。Git不知道如何在同一个文件上“相邻”应用您和您朋友的更改。

假设没有这样的冲突:

然后您可以尝试推动:

git push
 类似资料:
  • 在本文章教程中,我们将演示如何查看 Git 存储库的文件和提交文件记录,并对存储库中的文件作修改和提交。 注意:在开始学习本教程之前,先克隆一个存储库,有关如何克隆存储库,请参考: http://www.yiibai.com/git/git_clone_operation.html 在前面的文章中,都在要本地编写文件代码和提交,维护管制自己的文件版本,然后这种“自娱自乐”的方式,意义不是很大,在这

  • 这是我当前的git分支的样子 源自。我已经完成了将我的代码提交到我的分支,现在当我尝试推送我的分支时,我得到以下错误。 我该如何把这根树枝推过去呢?

  • 我的分行名称是大写的,比如说ABC。我在小写字母abc中误用了它。 即使在小写字母brach(abc)下,它仍然与rebase一起工作。在rebase之后,我开始推送代码, 得到了错误, 致命:远程端意外挂断 然后我检查了大写的名称分支,ABC。推它的时候仍然有错误。 我发现另一个帖子讨论了它,但没有解决我的问题。Git:合并后,Master无法解析为分支

  • 我试图将键/值对推送到这样的数组: 但我得到了一个错误: 解析错误:语法错误,意外'= 我看到,根据这个链接,不能使用array_push来推送键值对,但是,我不知道如何正确地进行推送。 我需要做什么来推动键值对数组?谢谢!

  • 怎么修这个东西?我需要“Karetski”用户名而不是“Pavelmetsko”

  • 我有一个非常奇怪的问题与和。当我尝试和推动,我得到: 我添加了远程: 有什么想法吗?