1. ホーム
  2. git

[解決済み] GitHubに空のブランチを作成する

2022-01-31 08:16:49

質問

GitHub の新しいブランチである release .

このブランチ は空である必要があります。 ! しかし、x 個のコミットを持つ既存のブランチがあり、そのコミット履歴は残したくありません。

私が見つけた唯一の方法は ローカル --orphan のブランチになります。

解決方法は?

2021年11月更新。 gitバージョン2.27より、以下のようになりました。 git switch --orphan <new branch> を使用すると、履歴のない空のブランチを作成できます。

とは異なり git checkout --orphan <new branch> このブランチには、現在のブランチからのファイルは一切含まれません (ただし、git が追跡できないファイルは除きます)。

これは、過去の履歴のない空のブランチを作成するための好ましい方法です。

このブランチに実際にコミットした後、github にプッシュするには git push -u origin <branch name> :

git switch --orphan <new branch>
git commit --allow-empty -m "Initial commit on orphan branch"
git push -u origin <new branch>

オリジナルの回答です。

の何が問題なのでしょうか? --orphan というオプションがあります。もし、履歴のない空のブランチを作りたいのなら、この方法がいいのですが...。

git checkout --orphan empty-branch

それから、ステージングエリアにあるすべてのファイルを削除します (コミットされないように)。

git rm -rf .

この時点では、あなたのマシン上に空のブランチがあります。

GitHub (あるいは他の Git リポジトリ) にプッシュする前に、少なくともひとつのコミットが必要です。たとえ何も書かれていないコミット (つまり空コミ) であっても、空ブランチをプッシュすることはできません。

git commit --allow-empty -m "root commit"

最後にリモコンに押して、ビールを開ける

git push origin empty-branch