У меня есть один репозиторий git, который я хотел бы превратить в два репозитория git, однако разделение не так просто, как кажется git filter-branch --subdirectory-filter
.
myRepo/
a-main.js
b-main.js
a-other.js
tests/
a-tests.js
b-tests.js
Я хотел бы получить еще один репозиторий, в котором есть только файлы a-*
. Обратите внимание, что я только что назвал их так для ясности, у реальных файлов нет общего шаблона. Их всего несколько, поэтому нет проблем перечислить их по отдельности.
Что я пробовал:
git clone --no-hardlinks ~/myRepo ~/myRepoA
cd ~/myRepoA
git filter-branch --tree-filter "rm b-main.js tests/b-tests.js" \
--prune-empty HEAD
Но это дает этот вывод
Rewrite 4ce7... (1/46)rm: cannot remove `b-main.js': No such file or directory
rm: cannot remove `tests/b-tests.js': No such file or directory
tree filter failed: rm b-main.js tests/b-tests.js
Для бонусных баллов:
Как только это будет сделано, как мне отправить его в новый репозиторий на Github?