Git Workflow для Hugo блога: шпаргалка
+
+
+
+ #
+
+
+
+
Универсальная шпаргалка по работе с Hugo блогом через Git с двумя окружениями (dev/prod). Подходит для любого статического сайта с автоматической сборкой.
✅ ВСЕ изменения только через dev
+✅ В main попадает только через git merge dev
+✅ Никогда не редактировать находясь на main
+✅ Всегда git pull перед началом работы
+✅ Проверяй на dev окружении перед публикацией
+
❌ Не редактировать на ветке main
+❌ Не делать git push --force в main
+❌ Не забывать git pull перед merge
cd ~/projects/blog
+
+# Убеждаемся что dev актуален
+git checkout dev
+git pull origin dev
+
+# Переключаемся на main и мержим
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+# → Автосборка → blog.ru
cd ~/projects/blog
+
+# ВСЕ изменения через dev!
+git checkout dev
+git pull origin dev
+
+# Исправляем
+nano content/posts/статья/index.md
+
+# Коммитим
+git add .
+git commit -m "fix: опечатка в статье"
+git push origin dev
+
+# Проверяем на dev, если ОК — публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
cd ~/projects/blog
+
+git checkout dev
+git pull origin dev
+
+# Обновляем тему
+git submodule update --remote themes/название-темы
+
+# Коммитим
+git add themes/название-темы
+git commit -m "chore: обновил тему"
+git push origin dev
+
+# Проверяем на dev, если ОК — публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
# На какой ветке?
+git branch
+# * dev ← текущая ветка
+
+# Что изменилось?
+git status
+
+# История коммитов
+git log --oneline -10
+
+# Разница между dev и main
+git diff main..dev
+
+# График веток
+git log --oneline --graph --all -10
# Откатываем на main
+git checkout main
+git reset --hard HEAD~1
+git push origin main --force
+
+# Переключаемся на dev и делаем правильно
+git checkout dev
+git add .
+git commit -m "feat: ..."
+git push origin dev
# Переключиться на dev и подтянуть изменения
+git checkout dev && git pull origin dev
+
+# Опубликовать dev в main
+git checkout main && git pull origin main && git merge dev --no-edit && git push origin main
+
+# Проверить доступность сайта
+curl -I https://blog.ru
+curl -I https://dev.blog.ru
# 1. Начало работы
+cd ~/projects/blog
+git checkout dev
+git pull origin dev
+
+# 2. Создаём/редактируем контент
+hugo new content posts/название/index.md
+hugo server -D --bind 0.0.0.0
+
+# 3. Коммитим
+git add .
+git commit -m "feat: новая статья"
+git push origin dev
+
+# 4. Проверяем на dev окружении
+
+# 5. Публикуем в production
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+
+
Помни: Dev для экспериментов, main для проверенного контента. Всегда тестируй перед публикацией.
✅ ВСЕ изменения только через dev
+✅ В main попадает только через git merge dev
+✅ Никогда не редактировать находясь на main
+✅ Всегда git pull перед началом работы
+✅ Проверяй на dev окружении перед публикацией
+
❌ Не редактировать на ветке main
+❌ Не делать git push --force в main
+❌ Не забывать git pull перед merge
cd ~/projects/blog
+
+# Убеждаемся что dev актуален
+git checkout dev
+git pull origin dev
+
+# Переключаемся на main и мержим
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+# → Автосборка → blog.ru
cd ~/projects/blog
+
+# ВСЕ изменения через dev!
+git checkout dev
+git pull origin dev
+
+# Исправляем
+nano content/posts/статья/index.md
+
+# Коммитим
+git add .
+git commit -m "fix: опечатка в статье"
+git push origin dev
+
+# Проверяем на dev, если ОК - публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
cd ~/projects/blog
+
+git checkout dev
+git pull origin dev
+
+# Обновляем тему
+git submodule update --remote themes/название-темы
+
+# Коммитим
+git add themes/название-темы
+git commit -m "chore: обновил тему"
+git push origin dev
+
+# Проверяем на dev, если ОК - публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
# На какой ветке?
+git branch
+# * dev ← текущая ветка
+
+# Что изменилось?
+git status
+
+# История коммитов
+git log --oneline -10
+
+# Разница между dev и main
+git diff main..dev
+
+# График веток
+git log --oneline --graph --all -10
# Откатываем на main
+git checkout main
+git reset --hard HEAD~1
+git push origin main --force
+
+# Переключаемся на dev и делаем правильно
+git checkout dev
+git add .
+git commit -m "feat: ..."
+git push origin dev
# Переключиться на dev и подтянуть изменения
+git checkout dev && git pull origin dev
+
+# Опубликовать dev в main
+git checkout main && git pull origin main && git merge dev --no-edit && git push origin main
+
+# Проверить доступность сайта
+curl -I https://blog.ru
+curl -I https://dev.blog.ru
# 1. Начало работы
+cd ~/projects/blog
+git checkout dev
+git pull origin dev
+
+# 2. Создаём/редактируем контент
+hugo new content posts/название/index.md
+hugo server -D --bind 0.0.0.0
+
+# 3. Коммитим
+git add .
+git commit -m "feat: новая статья"
+git push origin dev
+
+# 4. Проверяем на dev окружении
+
+# 5. Публикуем в production
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+
+
Помни: Dev для экспериментов, main для проверенного контента. Всегда тестируй перед публикацией.
Git Workflow для Hugo блога: шпаргалка
+
+
+
+ #
+
+
+
+
Универсальная шпаргалка по работе с Hugo блогом через Git с двумя окружениями (dev/prod). Подходит для любого статического сайта с автоматической сборкой.
✅ ВСЕ изменения только через dev
+✅ В main попадает только через git merge dev
+✅ Никогда не редактировать находясь на main
+✅ Всегда git pull перед началом работы
+✅ Проверяй на dev окружении перед публикацией
+
❌ Не редактировать на ветке main
+❌ Не делать git push --force в main
+❌ Не забывать git pull перед merge
cd ~/projects/blog
+
+# Убеждаемся что dev актуален
+git checkout dev
+git pull origin dev
+
+# Переключаемся на main и мержим
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+# → Автосборка → blog.ru
cd ~/projects/blog
+
+# ВСЕ изменения через dev!
+git checkout dev
+git pull origin dev
+
+# Исправляем
+nano content/posts/статья/index.md
+
+# Коммитим
+git add .
+git commit -m "fix: опечатка в статье"
+git push origin dev
+
+# Проверяем на dev, если ОК — публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
cd ~/projects/blog
+
+git checkout dev
+git pull origin dev
+
+# Обновляем тему
+git submodule update --remote themes/название-темы
+
+# Коммитим
+git add themes/название-темы
+git commit -m "chore: обновил тему"
+git push origin dev
+
+# Проверяем на dev, если ОК — публикуем
+git checkout main
+git merge dev --no-edit
+git push origin main
# На какой ветке?
+git branch
+# * dev ← текущая ветка
+
+# Что изменилось?
+git status
+
+# История коммитов
+git log --oneline -10
+
+# Разница между dev и main
+git diff main..dev
+
+# График веток
+git log --oneline --graph --all -10
# Откатываем на main
+git checkout main
+git reset --hard HEAD~1
+git push origin main --force
+
+# Переключаемся на dev и делаем правильно
+git checkout dev
+git add .
+git commit -m "feat: ..."
+git push origin dev
# Переключиться на dev и подтянуть изменения
+git checkout dev && git pull origin dev
+
+# Опубликовать dev в main
+git checkout main && git pull origin main && git merge dev --no-edit && git push origin main
+
+# Проверить доступность сайта
+curl -I https://blog.ru
+curl -I https://dev.blog.ru
# 1. Начало работы
+cd ~/projects/blog
+git checkout dev
+git pull origin dev
+
+# 2. Создаём/редактируем контент
+hugo new content posts/название/index.md
+hugo server -D --bind 0.0.0.0
+
+# 3. Коммитим
+git add .
+git commit -m "feat: новая статья"
+git push origin dev
+
+# 4. Проверяем на dev окружении
+
+# 5. Публикуем в production
+git checkout main
+git pull origin main
+git merge dev --no-edit
+git push origin main
+
+
Помни: Dev для экспериментов, main для проверенного контента. Всегда тестируй перед публикацией.
+
@@ -3260,7 +3330,7 @@
+ title="Теги">
Теги
@@ -3270,7 +3340,7 @@
+ title="Категории">
Категории
diff --git a/public/posts/blog-part-4-git-workflow/index.html b/public/posts/blog-part-4-git-workflow/index.html
index dac3084..a7b673d 100644
--- a/public/posts/blog-part-4-git-workflow/index.html
+++ b/public/posts/blog-part-4-git-workflow/index.html
@@ -270,7 +270,7 @@
[{
"@context": "https://schema.org",
"@type": "Article",
- "articleSection": "Posts",
+ "articleSection": "Статьи",
"name": "Блог на Hugo в K3s: часть 4 - выбор Git workflow",
"headline": "Блог на Hugo в K3s: часть 4 - выбор Git workflow",
"description": "Две папки или одна с переключением веток? Разбираем варианты организации работы с dev и production окружениями на практических примерах.",
@@ -394,6 +394,42 @@
+
+
+
+
+
+
+ Статьи
+
+
+
+
+
+
+
+
+
+
+
+
+ Шпаргалки
+
+
+
+
+
+
@@ -503,6 +539,40 @@
+
+
+
@@ -3575,7 +3645,7 @@
+ title="Теги">
Теги
@@ -3585,7 +3655,7 @@
+ title="Категории">
Категории
diff --git a/public/posts/blog-part-5-debugging/index.html b/public/posts/blog-part-5-debugging/index.html
index 592da1b..d49fc12 100644
--- a/public/posts/blog-part-5-debugging/index.html
+++ b/public/posts/blog-part-5-debugging/index.html
@@ -272,7 +272,7 @@
[{
"@context": "https://schema.org",
"@type": "Article",
- "articleSection": "Posts",
+ "articleSection": "Статьи",
"name": "Блог на Hugo в K3s: часть 5 - что делать когда всё внезапно сломалось",
"headline": "Блог на Hugo в K3s: часть 5 - что делать когда всё внезапно сломалось",
"description": "Сайт работал вчера, а сегодня 503. Алгоритм диагностики Kubernetes проблем за 5 минут - от DNS до пода, без паники и танцев с бубном.",
@@ -396,6 +396,42 @@
+
+
+
+
+
+
+ Статьи
+
+
+
+
+
+
+
+
+
+
+
+
+ Шпаргалки
+
+
+
+
+
+
@@ -505,6 +541,40 @@
+
+