有些时候想要创建一个不带历史记录的 git 分支,比如要从原来在本地开发的项目中,将代码 push 到 GitHub 开源,不想分享糟糕的历史提交记录,那就可以创建一个不带历史记录的分支。
查看 git checkout --help
的帮助说明, 可以看到其中有一个选项是 --orphan
,就是创建一个孤立的分支,这个分支上的第一个提交不回有任何的 parents 节点。
--orphan <new-branch>
Create a new orphan branch, named <new-branch>, started from <start-point> and switch to it. The first commit made on this new branch will have no parents and it will be the
root of a new history totally disconnected from all the other branches and commits.
所以我们可以做如下的操作:
git checkout --orphan new_branch
git add .
git commit -m "Init commit"
git push -u origin new_branch