Я - новичок в мире мерзавца, я хочу спросить, как решить мою проблему рабочего процесса, в основном у меня есть 2 компьютера, один в офисе и один в доме, и я, также имеют vps, работающий моим общим репозиторием мерзавца. Когда я работаю в офисе, у меня есть незаконченный код, и я хочу продолжить свою работу дома, так обычно я буду фиксировать сначала в офисе и продвигать свою работу в общий репозиторий мерзавца, и после этого я отступлю дома и продолжу его.
Но иногда, я просто прямо не пошел домой, и тем временем, один из моего коллеги, вытягиваю код и работаю с ним, и он просто вопит на меня, потому что я фиксировал взломанный код. Таким образом, мой вопрос, как я изменяю компьютер, не фиксируя, но я все еще получаю свою незаконченную работу?
Выполняйте всю свою работу в своей ветке, пусть ваш коллега знает, что нельзя тянуть из этой ветки. Это может стать беспорядочным, если у вас много разработчиков, но только с двумя людьми это не должно быть проблемой.
Если вы не можете настроить сеть и репозитории так, чтобы вы могли дома тянуть с работы и нажимать на нее (см. Раздел «Как Могу ли я использовать «git push» для синхронизации с хоста, с которого я не могу извлечь? »на странице GitFaq в Git Wiki), и вы также не можете настроить свой собственный голый репозиторий« публикации », используемый вами для Чтобы обмениваться данными между работой и домом, взгляните на git bundle , который предназначен для автономной (сникернет) транспортировки.
Возможно, это не прямой ответ на ваш вопрос, но я надеюсь, что это поможет.
Когда я работаю над проектом не только со мной, я использую свой собственный ветка. Поэтому, если у меня есть код, который еще не закончен, я фиксирую его и помещаю в свою ветку. Когда я думаю, что этот код готов к использованию, я передаю его в общую рабочую ветку. После тестирования мы объединяем его с основной веткой.
Пример:
Основная ветвь: Проверено всеми. Ветвь WIP: Общая ветка в процессе выполнения, ветвь, все могут использовать код и тестировать его. WIP-Bright: Мой собственная ветка WIP-something: чужая ветка.
Использование этой шпаргалки по git значительно упрощает работу с git.
Как сказал куби, используйте частную ветку. Если вы вообще не хотите помещать сломанный код в репозиторий, вы можете отправить себе изменения по электронной почте в виде патча (используйте git format-patch
), примените его дома и работайте оттуда (с помощью git apply
)
Также помните, что вы можете использовать git commit --amend
, чтобы перезаписать «наполовину запеченный» коммит правильным, прочитанным для отправки в общее репо.