Git создает новую ветку только с указанным каталогом и его историей, а затем отправляет в новый репозиторий

Я хотел бы создать новую ветку в своем репозитории, которая включает только файлы из определенного каталога в master и его историю , а затем отправить эту ветку в новый репозиторий.

...или что-то подобное — например, можно отправить каталог в новый репозиторий в новое репо без создания ветки.

На данный момент я думаю, что следующее будет работать, но мне интересно, есть ли более простой способ.

1 - Создать пустую ветку:

git symbolic-ref HEAD refs/heads/
rm .git/index 
git clean -fdx

2 - Извлечь каталог из мастера:

git checkout master  ...
git add  ...
git commit

3 - Переместить ветку на новый удаленный сервер:

git push -u  

4 - Затем в новом репо объединить ветку с мастером:

git checkout -t origin/
git checkout master
git merge 
git branch -d afterimage
git branch -d -r afterimage

Я пытаюсь сделать что-то эквивалентное Отсоединить подкаталог в отдельный репозиторий Git, но без беспорядка git filter-branch.

10
задан Community 23 May 2017 в 11:46
поделиться