Я успешно слил под-репозиторий git в подпапку основного, выполнив так называемое объединение поддеревьев .
Скажем, что-то вроде этого:
/project_B-git
+--src/
/main-repo-git
+--subproject_A/
+--subproject_B/ <--- SUBTREE MERGE
+--src/
Теперь моя проблема в том, что я не могу ограничить историю журналов в главном репо только подчиненной историей импортированного репо:
История в исходном проекте:
project_B-git$ git log --oneline
* 76543210 Say hello, wave goodbye.
* 01234567 A message to you Rudy.
Полная история в главном репо после слияния:
main-repo-git$ git log --oneline --graph
* 646bf9bb Merge subproject_B.
|\
| * 76543210 Say hello, wave goodbye.
| * 01234567 A message to you Rudy.
|
* f71fdb10 Init.
Отфильтрованная история, которую я получаю сейчас:
main-repo-git$ git log --oneline --graph -- subproject_B/
* 646bf9bb Merge subproject_B.
* f71fdb10 Init.
Итак, вы видите, когда я фильтрую свою историю по пути, я вижу толькокоммит слияния, "потеря" всей истории subproject_B .Я хотел бы получить:
* 646bf9bb Merge subproject_B.
* 76543210 Say hello, wave goodbye.
* 01234567 A message to you Rudy.
Я пытался прочитать справочную страницу git-log
, но не мог найти способ выбрать данную ветку слияния, чтобы я мог спросить gitследовать ветке other (опции --left-only
/ --right-only
не выполняют работу).