Я использовал расширение поддерева git ( https:// github.com/apenwarr/git-subtree). Я использую «--squash», чтобы сделать журнал основного проекта чистым, мои шаги выглядят следующим образом:
добавить библиотеку в основной проект
git subtree add -P sub/libdir --squash lib_remote master
получить обновление from lib
git subtree pull -P sub/libdir --squash lib_remote master
push changes to lib_remote
git subtree push -P sub/libdir --squash lib_remote master
Это работает очень хорошо для меня (как основной проект, так и библиотека имеют логичную историю). Проблема в том, что время нажатия поддерева git становится все длиннее и длиннее.
Моя цель использования git-subtree почти такая же, как и у Screndib, который спросил git-subtree не сохраняет историю, поэтому я не могу отправить изменения в поддерево, как я могу исправить/предотвратить эту проблему в будущем?
Я предполагаю, что при использовании --squash каждый раз для обработки push поддерево git должно искать всю историю с момента «добавления поддерева».
Как сократить время отправки поддерева? Или заставить его работать более эффективно, а не всю историю, обрабатывая только изменения с момента последнего нажатия (или извлечения) поддерева git?