Dskr.dev

English

16 нояб. 2020

Редактировать

Dskr.dev: Перенёс статьи в отдельный репозиторий

Раньше все мои статьи хранились в одном репозитории вместе с кодом. И это решение конечно очень простое и удобное с точки зрения разработки. Но его минус в том что для написания новой статьи, приходилось деплоить блог, а это долго и лениво(возможно именно поэтому я ничего и не писал).

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

Другое решение это продолжить хранить статьи в гит репозитории, но научится как-то обновлять статьи без деплоя. И вот этот вариант мне понравился больше. Но тут есть опять два пути, оставить статьи в репозитории с кодом или вынести в отдельный репозиторий.

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

Статьи продолжили храниться в виде markdown файлов, но теперь каждый пост лежит в отдельной папке. Например, этот файл лежит по пути 2020-11-16/README.md. В данный момент особой необходимости для вынесения каждого поста в отдельную папку не было, но я решил что будет не плохо если я смогу хранить весь контент относящийся к статье в одном месте, например картинки. Далее был написан скрипт, который обходит все посты и генерирует “главную страничку репозитория”. Скриншот

Ну а блог используя github rest api раз в минуту проверяет время обновления репозитория, и если оно не совпадает со значением предыдущей проверки, то выкачивает все посты. Решение не очень красивое и правильное, но вполне работает. В будущем конечно нужно бы научится работать прям с гитом.