У меня есть git-репозитории rA и rB, я хотел бы копировать только определенные каталоги в rA и сохранять их историю, например,
rA
- d1
- d2
- d3
- d4
rB (with d1 and d2 preserved)
- d1
- d2
То, что я сделал до сих пор:
git remote add -f rA /path/to/rA
git merge -s ours --no-commit rA/master
Это дает мне все файлы в rA
, и мне интересно, могу ли я использовать такие команды, как git-filter-branch
, чтобы исключить d3
и d4
? Или у меня совершенно неверное представление о том, как обрабатываются и управляются репозитории?
Спасибо.
Изменено:
Я сделал это возможным:
- Дублируйте (cp -R) мой существующий репозиторий в каталог.
Выполните эту команду для этого нового каталога:
git filter-branch --index-filter 'git rm --cached -rgit ls-tree - только для имени --full-tree -r $ GIT_COMMIT | grep -Ev "^ dirs | to | be | включены" | xargs -r git rm --cached -r; fi '- --all
Продолжено на этапах, которые я упоминал ранее.