Obeta

如何使用已有的Git分支新起一个项目

有时候我们在进行项目开发的时候出于一些原因并不想重新新建一个新的Repo,这时候我们一般会选择在已有的Repo中新建一个分支进行并行开发,那么正确的做法是这么做呢?

GO

其实非常简单:

git checkout --orphan <branchname>
git rm --cached -r .

--orphan参数指示新建一个孤儿分支,它不以任何一个分支为父分支。

第二行命令是将其它文件进行删除,当然如果没有删除干净可以自己删掉除了.git目录的所有文件,这时候当前分支就是一个空分支,可以进行其他项目的开发。

注意此时不同分支的.gitignore内容不同会导致在不同分支切换的时候导致数据“串门”,比如可能会导致 A 分支不小心提交了另一个 B 分支里的构建文件,因此建议采用clone多次当前Repo命名为不同的文件夹进行并行开发,避免需要切换分支的情况:

git clone <repo_url> A && cd A && git checkout A
git clone <repo_url> B && cd B && git checkout B

MORE

如何将已存在的 Repo 移动到当前这个空分支上?

步骤:

git remote add old <your_repo_url>
git fetch old
git merge old/master
  1. 首先我们先在空分支上新增一个远程分支
  2. 然后fetch此分支进行更新
  3. merge此分支内容到当前空分支上

最后将此分支更新到远程:

git push --set-upstream origin <branchname>

个人随笔记录,内容不保证完全正确,若需要转载,请注明作者和出处.