TL; версия DR
Файлы в определенной папке загромождают результаты моего поиска при поиске на GitHub. Эти файлы мне нужны только для целей архивации, поэтому, хотя я не хочу их удалять, я подумал, что могу периодически перемещать их в отдельную ветку, чтобы очистить эту папку в master.
Вопрос в том, как сделать это так, чтобы это было легко, повторяемо и не сильно загрязняло мою историю.
Context
В моей (нашей) ситуации у нас есть git-репозиторий, в котором хранится текущее состояние нашей модели данных. Таким образом, у него есть файл с именем TAB_ORDER.sql
, который содержит оператор create table
для создания таблицы.
Эти файлы в основном создаются с помощью сравнения схем RedGate.
Кроме того, хранилище содержит скрипт миграции, который помогает нам развертывать изменения. Ожидается, что запрос на удаление будет содержать изменение в объектном файле, а также миграцию, чтобы это произошло в действующей базе данных. Таким образом, чтобы добавить столбец в эту таблицу, в одном PR я бы добавил файл миграции с оператором alter table TAB_ORDER
для добавления столбца, и я бы изменил TAB_ORDER.sql так, чтобы оператор create в нем представлял новое состояние таблица, включая новый столбец.
Пока все хорошо.
Проблема
Проблема в том, что я люблю использовать GitHub для поиска использования определенных объектов базы данных, потому что это быстро и позволяет мне просматривать все наши репозитории. Но мои поиски загрязнены всеми сценариями миграции. В идеале я хочу исключить их из поиска, но GitHub этого не поддерживает, и не похоже, что это произойдет в ближайшее время.
Итак, у меня есть два основных варианта, кроме того, чтобы придерживаться его:
- Полностью удалите сценарии миграции.
- Храните миграции в отдельной ветке, но не в master.
Я бы предпочел последнее, чтобы я мог сохранить свои скрипты миграции и искать их, если захочу. Конечно, удаленные файлы хранятся в истории, но их уже не легко найти, поэтому предпочтение отдается их удалению.
Мое решение (с которым мне нужна помощь)
Как я могу легко переместить эти сценарии миграции в отдельную ветку архива. Учитывая тот факт, что я хочу, чтобы разработчики создавали один PR с миграцией и модификацией, это архивирование было бы отдельным процессом, который я мог бы периодически выполнять, но я действительно не знаю хорошего способа «переместить» файлы из master в ветка, в основном.
Альтернативные решения тоже приветствуются.