Как создать новую (и пустую!) «Корневую» ветку?

Я хотел бы определить новуюкорень» ветка в этом репозитории git. От "корень» ветвь Я имею в виду ветвь, которая полностью независима от всех других ветвей в хранилище1.

К сожалению, даже коммит (пустьзови этоA) в самой основе репоДерево коммитов содержит много файлов (это был репозиторий, который был инициализирован в уже достаточно зрелом проекте).

Это означает, что даже если бы я далA как новый филиалэта новая ветка не начиналась с "с чистого листа", а скорее он будет содержать все файлы, которые были зафиксированы в.A

Есть ли способ, которым я могу создать совершенно пустую ветку в этом хранилище, с как можно ближе кA насколько это возможно? 1

Кстати, этоне эквивалентно созданию нового репо. Отдельные репо были бы менее удобными по многим причинам.

РЕДАКТИРОВАТЬОК, это то, что я сделал, основываясь наvcsjones' ответ:

# save rev of the current earliest commit
OLDBASE=$(git rev-list --max-parents=0 HEAD)

# create a new orphan branch and switch to it
git checkout --orphan newbranch
# make sure it's empty
git rm -rf .

# create a new empty commit in the new branch, and
# save its rev in NEWBASE
git commit --allow-empty -m 'base commit (empty)'
NEWBASE=$(git rev-list HEAD)

# specify $NEWBASE as the new parent for $OLDBASE, and
# run filter-branch on the original branch
echo "$OLDBASE $NEWBASE" > .git/info/grafts
git checkout master
git filter-branch

# NOTE: this assumes that the original repo had only one
# branch; if not, a git-filter-branch -f  command
# need to be run for each additional branch.

rm .git/info/grafts

Хотя эта процедура немного сложна, конечный результатпустой базовый коммит, который может служить для любого новогос чистого листа; все янужно сделать тогда

git checkout -b cleanslate $(git rev-list --max-parents=0 HEAD)

В будущем я всегда буду создавать новые репозитории, как это:

git init
git commit --allow-empty -m 'base commit (empty)'

... так что первый коммитпустойи всегда доступен для запуска новой независимой ветки. (Это было бы, я знаю, очень редко необходимое средство, но сделать его легкодоступным довольно легко.)

Ответы на вопрос(2)

Ваш ответ на вопрос