磁器のGitコマンドのみを使用して、切り離されたマスターブランチを作成できます。
git init
touch GO_AWAY
git add GO_AWAY
git commit -m "GO AWAY - this branch is detached from reality"
これにより、失礼なメッセージを含むマスターブランチが得られます(より丁寧になりたい場合があります)。次に、「実際の」ブランチを作成し(SVNを考慮してトランクと呼びましょう)、masterから離婚します。
git checkout -b trunk
git rm GO_AWAY
git commit --amend --allow-empty -m "initial commit on detached trunk"
ねえ、プレスト! gitk --allは、マスターとトランクをリンクなしで表示します。
ここでの「魔法」とは、-amendによってgit commitが現在のHEADと同じ親を持つ新しいコミットを作成し、HEADがそれを指すようにすることです。ただし、現在のHEADはリポジトリの最初のコミットであるため、親はありません。したがって、新しいHEADも親を取得せず、お互いに切り離されます。
refs / heads / masterがまだ指しているため、古いHEADコミットはgit-gcによって削除されません。
--allow-空我々は空の木をコミットしているので、フラグは必要とされています。git rmの後にgit addがあった場合、それは必要ありません。
実際には、リポジトリ内の最初のコミットにブランチし、そのツリーを削除し、分離されたツリーを追加してから、git commit --amendを実行することで、いつでも分離ブランチを作成できます。
これはリモートリポジトリのデフォルトブランチを変更する方法の質問には答えませんが、分離されたブランチを作成する方法については明確な答えを提供します。