Это - это рабочий процесс, который я стараюсь придерживаться, со скриптами для облегчения этого рабочего процесса, заданными здесь . Основная идея состоит в том, чтобы иметь как минимум два хранилища:
(a) общий «центральный» удаленный репозиторий, который служит каноническим «первичным» репо для всех разработчиков; приведенный здесь код всегда должен быть (более или менее) непрерывным и функциональным, проходить все тесты и т. д.
(b) персональный удаленный репозиторий «в процессе разработки» / разработки, который служит удаленной резервной копией для локальной или вспомогательной разработки. Код здесь может быть в любом состоянии. Используя все преимущества дешевого ветвления Git, как правило, линия разработки темы wip должна находиться в своих собственных ветках (как описано в приведенных выше ссылках), пока не будет готова к прайм-тайм. Когда придет время, объединитесь с вашим локальным мастером, а затем отправьте его в «основной» репозиторий и удалите ветки wip как из локального, так и из личного удаленного репозитория разработки.
При желании вам может потребоваться третий репо для публичного (т. Е. Не входящего в проект) потребления.
Вы также можете посмотреть здесь для описания аналогичного, но другого рабочего процесса. Кстати, книга Pro Git, приведенная в предыдущей ссылке, является, на мой взгляд, единственным лучшим Git-ресурсом на данный момент.