Это повторяющийся вопрос ко мне, но я хотел бы повторить.
Быстро объясните мою ситуацию: я нахожусь в среде, где у меня нет сервера git, общего раздела или какой-либо точки соприкосновения между кодерами. Нет, не будет, не может быть. Период.
Я пытаюсь придумать решение рабочего процесса, чтобы даже в той среде, в которой нам удается поддерживать разумную синхронизацию наших представителей.
Решение, которое я пытаюсь использовать в данный момент, использует дискуссионную группу для распространения исправлений, две основные ветки и, казалось бы, короткий рабочий процесс:
- Ветви
marster
иyours
master
— это ветка синхронизации, которая будет держать вас в курсе и отслеживать, чего еще нет в вашем коде у других разработчиков.yours
будет вашим новым мастером, и именно там должен быть ваш окончательный код. Вы не работаете вmaster
.- все присылают патчи в список обсуждения.
- Я считаю, что очень два человека будут работать над одним и тем же файлом редко.
В рабочем процессе есть два основных действия:
Создать исправления:
- Добрался до
yours
- Создание патчей из
master
(git format-patch master
) - Go to
master
- Объединить
yours
вmaster
- > Перейти к
yours
, продолжить работу сyours
Применить исправления:
- Перейти в
master
филиал - Применить полученные патчи
- Перейти в
yours
филиал - Объединить
master
вyours
- > Продолжить работу с
yours
Если я правильно понял, это должно обеспечить разумную синхронизацию ветки master
со всеми остальными.
Не то чтобы ветка yours
предназначена только для помощи в отслеживании того, что есть у других людей, а что нет.
Есть несколько проблем, которые я пытаюсь решить, если будет слишком много хлопот:
- Порядок применения патчей?
- Как избежать и определить, когда кто-то пропускает патч?
- Сколько проблем может быть, когда кто-то пропускает патч?
- Другие проблемы, которые это может вызвать, о которых я даже не думал?
Спасибо!
format-patch
/am
будет генерировать уникальные хэши коммитов для каждого репозитория (другой коммиттер). поэтому, даже если деревья в вашем репозитории одинаковы и история в основном одинакова, слияние/сравнение и обсуждение конкретного коммита будет питой (потому что у всех разные коммиты, которые просто оценивают одни и те же патчи). Избавьте себя от хлопот и настройте сервер или создайте учетные записи на одном из множества хостинговых сайтов (github, gitourious и т. д.) — они также предлагают частные репозитории. - person knittl   schedule 11.07.2011git bundle
? - person knittl   schedule 11.07.2011git bundle
, посмотрю! благодаря. - person filippo   schedule 11.07.2011