Git
Поддеревья
Поиск…
Синтаксис
-
git subtree add -P <prefix> <commit> -
git subtree add -P <prefix> <repository> <ref> -
git subtree pull -P <prefix> <repository> <ref> -
git subtree push -P <prefix> <repository> <ref> -
git subtree merge -P <prefix> <commit> -
git subtree split -P <prefix> [OPTIONS] [<commit>]
замечания
Это альтернатива использованию submodule
Создание, вытягивание и подтип Backport
Создать субтитры
Добавьте новый удаленный plugin указывающий на репозиторий плагина:
git remote add plugin https://path.to/remotes/plugin.git
Затем создайте поддерево, определяющее новые plugins/demo префикса папки. plugin - это удаленное имя, а master ссылается на главную ветку в репозитории поддерева:
git subtree add --prefix=plugins/demo plugin master
Обновления субтитров
Вытяните обычные фиксации, сделанные в плагине:
git subtree pull --prefix=plugins/demo plugin master
Обновления подкаталогов Backport
Укажите фиксации, сделанные в суперпроекте для резервного копирования:
git commit -am "new changes to be backported"Оформить новую ветку для слияния, установить для отслеживания репозитория поддерева:
git checkout -b backport plugin/masterВишневый выбор:
git cherry-pick -x --strategy=subtree masterНаправьте изменения обратно на источник плагина:
git push plugin backport:master
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow