我刚刚在我的主分支上运行git subtree split
但是子树(dist
分支)缺少master
分支上的最后两个提交。我不知道该怎么做。我以前没碰到过这个。它始终没有问题。
这是我的github网络图的样子(不包括dist
):
我从主分支机构运行了git subtree split -P dist -b dist
。
如果我从git log
分支运行dist
,则会显示最近的提交是6d1620a
。 17c1f31
和33dfc67
在哪里?
任何人都知道这里发生了什么?
我正在使用Yeoman生成的项目使用的部署方法。基本上意味着我有一个整体项目文件夹,其中有一个dev
(或app
)目录,其中所有开发都已完成,dist
目录是项目所在的目录(通过gulp构建过程)。所以要部署我只需将dist
目录拆分到它自己的分支中,然后将其推送到实时服务器。
看起来像这样:
gulp
git checkout master
git merge --no-ff dev
git subtree split -P dist -b dist
git push
另外git subtree push -P dist origin dist
也可以。
答案 0 :(得分:4)
我忘记了运行gulp构建过程。因此,新提交不会影响/dist
目录。
有意义的是,提交不会传递给不受其影响的目录。但是,提前不知道这种行为确实让我感到困惑。