Автоматически игнорировать выбранные изменения кода при нажатии в хранилище git -hub

В типах проектов кодирования, над которыми я работаю, часто используется общая база кода, которую люди используют, а затем создает собственный персонализированный код поверх нее. Способ сделать это состоял бы в том, чтобы сохранить общий базовый код в своем собственном хранилище git -hub, который люди могут затем развить и изменить.

Однако при нажатии на изменения в общем репозитории базового кода вы не хотите включать свой персонализированный код, поэтому вы должны быть осторожны, чтобы не включать его при слиянии. Есть ли простой способ сделать это, не сообщая git игнорировать персонализированный код каждый раз?

Если возможно, я предпочел бы не иметь отдельную вилку базового кода для конкретной цели внесения изменений в базовый код.

Ответ 1

Если персонализация ограничена определенными файлами, способ обнаруживать только просмотр ее содержимого, вы можете:

  • только файлы шаблонов версий, которые всегда будут перенаправлены на ваш "общий контент" репо
  • сохранить личные файлы значений (файлы с правильными значениями в нем, которые всегда игнорируются вашим ретранслятором git и никогда не толкаются)
  • version script файлы, которые могут принимать файл шаблона, файл значений и автоматически создавать файл с конечным результатом. Этот сгенерированный файл также не будет нажат, а также будет проигнорирован вашим реестром git.

Идея состоит в том, чтобы сделать это поколение автоматически при оформлении заказа.
Вы делаете это, объявляя драйвер фильтра содержимого.

content filter dirver

В режиме проверки, в smudge script, обнаружите контент (эти сценарии "фильтр-драйвер" не имеют имя файлов, которые они фильтруют) ваших файлов шаблонов, и генерирует правильный контент, ища файл значений по определенному пути.