我的gitlab上有我的项目的回购。我首先提交并在Windows上推送此项目。在ubuntu上创建VM后,我复制粘贴我的项目文件夹。我在ubuntu上继续我的项目,我确实提交了(没有推送)。我没有再使用我的Windows项目了。现在,当我想推动项目(ubuntu)时,我有错误。我想我有冲突和合并问题。
我如何push
我的回购项目。我尝试pull
,fetch
,但没有。
错误是:
! [rejected] master -> master (non-fast-forward)
impossible to push references to 'repo'
tip: The updates were rejected because the head of the current branch is behind its remote peer. Integrate remote changes (eg 'git pull ...') before pushing again.
之后当我做一个git pull origin master
时,我与很多文件有很多冲突。
答案 0 :(得分:2)
您应该执行git pull
并解决冲突的文件。打开每个,修复它,然后git add
它。你会发现这样的冲突线:
对所有冲突文件执行此操作后,请测试代码并运行git commit
进行合并。你可以在那之后继续推进。
答案 1 :(得分:1)
git
不允许您push
,pull
,fetch
因为您复制了粘贴整个目录。这已经复制了git在.git
上创建的git init
文件夹。删除.git
文件夹,然后使用git init
重新初始化git存储库。
这将根据新路径创建一个新的.git
指针。
答案 2 :(得分:0)
在 git pull 上, git 会合并冲突文件,您需要解决冲突并提交再次在git上推送( git push origin master )更新的代码。
了解更多信息,请查看此链接: rejected master -> master (non-fast-forward)