github一个仓库管理多个项目 git orphan分支的使用
前言
假如你想把A项目和B项目都放在同一个git仓库下管理,但是又怕项目间的文件相互混淆了,这时候就可以使用git的orphan分支。
orphan分支可以实现切换到某个分支就只显示当前分支的文件。
下面通过具体需求来演示一下使用方法,比如我有一个demo仓库,里面包含了php、golang等编程语言的demo,来看看我是怎么通过git orphan分支方式来进行管理的。
简单来说有三个步骤
①创建demo项目
②分别创建名叫golang、php的orphan分支
③写不同语言的demo的时候切换到该语言的分支
创建orphan分支
git checkout --orphan golang
git checkout --orphan php
这里我分别创建了一个名叫golang和php的分支,如下图所示
注意,如果没有在该分支下提交东西,则该分支其实并没有创建,下面随便改一点东西提交上去
提交文件到分支
其实提交到orphan分支和普通的提交并没有太大的区别,只是push的时候需要指定分支。命令如下
git add .
git commit -m"test"
git push origin php
切换分支
上面已经成功提交到php分支上了,当我们想写golang的demo的时候,可以切换到golang分支下,使用以下命令
git checkou golang
这时你会发现刚刚在php分支下写的demo文件不见了(要切换到php分支才能看到)
总结
总的来说orphan分支的简单使用有以下几个命令
# 1.创建orphan分支(注意创建了分支必须提交文件到该分支下,否则其实没有创建成功)
git checkout --orphan php
# 2.提交到orphan分支下
git add .
git commit -m"desc"
# 提交三步曲只有这步不一样,需要指定分支
git push origin php
# 3.切换分支,比如切换到golang分支(切换了文件会发生变化,只会显示该分支下的文件)
git checkout golang