DropBox и Git-репозиторий
В последнее время вплотную работаю над разработкой статических сайтов. И очень удобно при этом использовать Git-репозитории. Разработка существенно упрощается, куда проще вносить какие-то новшества, пробовать новые техники…
Однако заводить для этого отдельный репозиторий на github.com не хочется, так как там он публичный. Использовать чисто локальный репозиторий не удобно, доступ к нему только с одной машины. Можно организовать репозитории на VPS по SSH-протоколу, что я в принципе и сделал и для некоторых вещей использую. Однако на днях понял, что можно сделать все гораздо проще.
Достаточно организовать локальный репозиторий в папке, которая синхронизируется с сервером DropBox.
$ cd ~/DropBox/
$ mkdir -p Git/project.git
$ cd Git/project.git
$ git init --bare
Репозиторий создан, теперь с ним можно начинать работать. Создаем рабочую копию, в которой будем проводить все эксперименты:
$ mkdir -p ~/Temp/Git
$ cd ~/Temp/Git
$ git clone ~/Git/project.git
Получаем предупреждение о том, что мы клонируем пустой репозиторий, но просто не обращаем на это внимание. Переходим в созданную директорию и начинаем работать:
$ cd project
$ > README
$ git add README
$ git commit -a -m "Add README file"
$ git push origin master
Все последующие комиты можно будет совершать обычным git push
. В итоге получается, что в папке DropBox у нас хранится основной репозиторий, с результатами наших экспериментов. Или, если так можно выразиться, рабочая копия проекта. А в копии репозитория проводим все эксперименты, создавая отдельные ветки, удаляя или создавая новые файлы, периодически делая комиты для фиксации изменений. И при необходимости можно сделать откат до нужного комита.
Если же эксперимент удался, и все прошло как задумывалось, то текущее состояние пушим в основной репозиторий, который автоматически будет синхронизирован с сервером DropBox.
С сервера сам репозиторий можно забрать из любой точки земного шара, главное, чтобы интернет работал. И, теоретически, можно организовать групповую работу с репозиторием. Хотя эту возможность я пока не отрабатывал.
Вот так просто можно организовать свой бесплатный Git-сервер.