Хардкодинг

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

Предположим даже что у вас какой-нибудь Битрикс который предполагает что вы будете разрабатывать сайт в его относительно медленной панели управления. В таком случае сразу скажу про вторую полезную фичу - все свои шаблоны пихайте в /local. Таким образом файловая система будет чистой, а почти все ваши наработки будут лежать в одном месте.
Итак, теперь мы берем вот этот мануал и настраиваем деплой нашего приложения.
Потом переключаемся на новую ветку под названием hardcoding. В нее мы будем сильно мусорить =) Не забудьте в хуке тоже выставить checkout hardcoding!

Теперь открываем локальный терминал и переходим в директорию с проектом. Туда кладем bash-скрипт

#!/bin/bash
if [[ `git status --porcelain` ]]; then
    git add -A && git commit -m \"revision\" && git push origin master
    notify-send -i info "Site updated"
fi

Потом даем скрипту права на выполнение и запускаем при помощи утилиты watch:

watch -n 1 ./hard.sh

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

Итак мы убиваем сразу двух зайцев - храним код в VCS, хоть и с мусорными коммитами, и имеем автоматическую синхронизацию с сервером!

По окончании хардкодинга ветку рекомендуется слить в master и прибить =)