我在互联网上搜索了几个小时,找不到解决这个问题的方法:
我想创建一个GitHub
名为的新分支release
.这个分支需要是空的!但是有一个现有的分支与x提交,我不想拥有它commit history
.
我找到的唯一方法是创建一个本地 --orphan
分支
提前致谢 ;)
Cai*_*ete 84
--orphan
选项有什么问题?如果你想要一个空的并且没有历史的分支,这就是要走的路......
git checkout --orphan empty-branch
Run Code Online (Sandbox Code Playgroud)
然后,您可以删除暂存区域中的所有文件(以便它们不会被提交):
git rm -rf .
Run Code Online (Sandbox Code Playgroud)
此时,您的计算机上有一个空分支.
在你可以推送到GitHub(或任何其他Git存储库)之前,你需要至少一次提交,即使它没有任何内容(即空提交),因为你不能推送一个空分支
git commit --allow-empty -m "root commit"
Run Code Online (Sandbox Code Playgroud)
最后,将它推到遥控器,然后打开啤酒
git push origin empty-branch
Run Code Online (Sandbox Code Playgroud)
thi*_*ign 19
--orphan
适合在本地创建一个空分支,但是,为了推送它或与其他分支交互,您需要提交。
在孤立分支上创建新提交不是一个好主意,因为您将无法与其他分支进行交互。IE
git checkout --orphan test
git commit --allow-empty -m "init test branch"
git merge master
fatal: refusing to merge unrelated histories
Run Code Online (Sandbox Code Playgroud)
相反,您应该更喜欢从 master 的第一次提交创建一个新分支。如果提交不为空,您可以在第一个提交之前添加一个空提交,如@houtanb 所述。
归档时间: |
|
查看次数: |
26012 次 |
最近记录: |