Category Archives: git

Git Wizardry

В своей прошлой заметке я постарался осветить в общих чертах стиль работы с
распределенной системой контроля версий git и указать на отличия по сравнению с
классическими централизованными СКВ. Целью было прежде всего обобщение опыта
работы с системой без упоминания тонкостей синтаксиса отдельных команд.

Данный же топик задумывался как непосредственное введение в работу с git, нечто
среднее между tutorial и обобщенной справкой, до которого все же рекомендуется
прочитать упомянутое выше введение. Сознательно избегаются технические
подробности работы git, употребляются только общие для СКВ термины и
ограничивается список упоминаемых команд.
Continue reading

Advertisements

Git Workflow

1 Вступление

В топике освещаются не столько подробности работы с git, сколько его отличия от схемы разработки других систем контроля версий, и общий подход (выработанный по большей части личным опытом и Git Community Book) к работе.

Continue reading

Более правильная работа с гит (git stash и git rebase)

Временами при работе с git одновременно нескольких человек возникают не очень красивые записи в журнале: “Merge branch ‘master’ of ssh://<usr>@<server>/path/to/repo”, которые не несут особенно большого объема информации. Так, к примеру, посмотрев данный коммит в git-web мы не увидим никакой информации об измененных файлах. Такая ситуация возникает когда вы делаете git pull в вашей рабочей копии репозитория, в которую внесены изменения, при этом происходит авто merge. Continue reading

Для чего нужен git stash?

Работая с git рано или поздно происходит такая ситуация, когда во время работы над одной задачей, требуется сделать какое-то срочное изменение в коде. Правильнее, пожалуй, создавать отдельную ветку, но что делать, если ветку мы не создали? В этом случае нам на помощь приходит команда git stash. Она позволяет спрятать неприменённые изменения в stash-очередь, и затем, когда надо — достать их обратно. Порядок действий такой:

Continue reading

Правила хорошего тона при работе с git в многопользовательском окружении

Данное повествование подразумевает знакомство читателей с такими командами git как: add, pull, push, commit.

В случае многопользовательской работы с репозиторием зачастую получается такая ситуация: сделали мы git pull, правим код, коммитим, хотим пропихнуть код в общий репозиторий, а тут-то нам и говорят: фигу вам, а не push — там уже всё поменялось. В итоге приходится делать git pull, получается вынужденный автоматический merge и с этим уродливым merge (который был по сути и необязателен!) мы запихиваем наши изменения обратно в общий репозиторий. История изменений получается не самая красивая.

Ниже будет рассказано о том, как же можно избежать подобных конфузов и прослыть знатоком git kung-fu. Continue reading