我有4个名为
的项目数学是相机的子树,相机是子树 CGOpenGL ,最后 CGOpenGL 是 OpenGLSandbox 的子树
当我在 OpenGLSandbox 工作时,我需要对数学进行一些更改。完成更改后,我执行git commit -am "bla bla"
和git push
这是在顶级目录中执行的,即 OpenGLSandbox
重要的是说我添加了三个遥控器
在上一次提交主项目(OpenGLSandbox)之后,我想将更改从Math推送到其存储库,所以我尝试了git subtree push --prefix=cgopengl/camera/math rmath master
a)前缀的值是项目的路径,即我们要推送的子树
上一个命令以下列错误结束
! [rejected] f60f3e788d6e8713a525cab0fe187f5f3b230b8e -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/user123/Math.git'
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.
所以我尝试用git subtree pull --prefix=cgopengl/camera/math rmath master
进行拉动并得到以下错误
fatal: refusing to merge unrelated histories
b)如何从OpenGLSandbox项目中推送对Math进行的更改?我无法找到克服这一点的方法。我在哪里弄错了?