Зачем мне это нужно: у меня есть один репозиторий на github, я хочу добавить папку, как примеры, под своим репо, и каждый пример должен быть независимым и запускаемым, а когда я корректирую примеры, я не хочу изменить основной проект.
Хотя вы можете получить то, что вы хотите с подмодулями , это лишняя сложность. То, что вы описываете, - это обычная настройка проекта.
Просто включите каталог examples/
как часть основного хранилища проекта. Зафиксируйте и pu sh изменится так же, как и любой другой каталог. Нет ничего плохого в «модификации основного проекта» путем фиксации в каталоге examples/
. Полезно сохранять примеры с исходным кодом, чтобы они оставались в синхронизации c при изменении проекта. Во многих случаях изменение кода проекта требует обновления примеров.
В некоторых случаях может потребоваться другой процесс для examples
.
. Если вы хотите sh раздать examples
отдельно, это должно быть сделано с помощью инструмента выпуска. Я не могу сказать, рекомендовать инструмент релиза для вашего проекта, но я могу рекомендовать, чтобы Git не был инструментом релиза.
Если у вашего проекта есть дорогой обзор или набор тестов, который выполняется при каждом коммите или извлечении Запрос, измените ваш процесс, чтобы использовать сокращенный процесс для изменений, которые касаются только каталога examples
. Вы можете проверить, какие файлы были изменены в ветке с помощью git diff master --name-only
. И вы можете увидеть, какие файлы были изменены в предыдущем коммите с git diff-tree --no-commit-id --name-only -r HEAD
.