git-subtree push --squash требуется много времени, и со временем оно становится все больше с увеличением количества коммитов

Я использовал расширение поддерева git ( https:// github.com/apenwarr/git-subtree). Я использую «--squash», чтобы сделать журнал основного проекта чистым, мои шаги выглядят следующим образом:

  1. добавить библиотеку в основной проект

    git subtree add -P sub/libdir --squash lib_remote master

  2. получить обновление from lib

    git subtree pull -P sub/libdir --squash lib_remote master

  3. 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?

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