Как я автоматизировал синхронизацию форков с мастер репозиторием GitLab Sync & Smart Cleanup
Моя боль:
В процессе работы мне часто приходится редактировать общие репозитории, в которых лежат конфигурациионные файлы. В таких репозиториях обычно запрещено создавать ветки. Нужно форкнуть репозиторий и уже в своем форкнутом репозитории создавать ветки. Проблемы начинались, когда родительский репозиторий наполнялся новыми коммитами, а мой форкнутый отставал. Что нужно было делать:
- Добавить ремоут апстрим
- Сделать фетч мастер ветки апстрима
- Сделать ребейз моей ветки на этот мастер
Либо в веб морде гитлаба зайти в форкнутый репозиторий и нажать кнопку Update fork.
Решение:
Решил автоматизировать действия, написав плагин для IntelliJ IDEA.
Плагин должен был:
- Автоматически находить родительский репозиторий и позволять получать из него новые коммиты.
- Проверять вмерджена ли ветка в родительский репозиторий и предлагать ее удалять. С учетом засквошенных коммитов. Обеспечить автоматическую проверку при переключении на репозиторий.
- Загружать сертификаты из хостов грайдл в выбранный cacerts
Все это реализовано с клодом за один вечер.
Прошу любить и жаловать https://plugins.jetbrains.com/plugin/33094-gitlab-sync--smart-cleanup
