Есть много разных способов сделать это. Если вам придется переходить с компьютера на компьютер, вы будете переключаться на другой репозиторий, так что это означает, что вы будете вносить изменения в удаленное хранилище. Это хорошо, но это также означает, что вы
Очень простой пример - выполнять нестабильную работу только в частной ветке и называть это чем-то очевидным, например, unstable-development
. Вот как это сделать с нуля. Во-первых, давайте сделаем новый репо с сайта вашего клиента, который я назову «secret-sauce».
$ git clone git://example.com/repositories/secret-sauce.git
Вы по-прежнему на ветке master
, по умолчанию. Давайте создадим новую ветку, чтобы вы могли фиксировать вещи там вместо master
.
$ git branch unstable
$ git checkout unstable
Switched to branch 'unstable'
Хорошо. Теперь давайте добавим нестабильный код:
$ touch kablammo.txt
$ git add *
$ git commit -m "Added unstable code."
[master (root-commit) 9428aef] Initial checkin.
0 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 kablammo.txt
Прямо сейчас, unstable
существует только на вашей стороне. Обратите внимание, что когда мы клонировали, мы получили удаленный репозиторий с именем origin
, который имеет соответствующую ветку master
. Когда ваш локальный репозиторий узнает о ветвях удаленного репозитория, мы называем это «ветвью отслеживания». Вы можете видеть все свои удаленные ветви отслеживания с git branch -r
:
$ git branch -r
origin/HEAD -> origin/master
origin/master
Хорошо. Давайте отодвинем наши изменения назад!
$ git push origin unstable
Вот и все - наши изменения теперь находятся в ветке unstable
на удаленном репо. Если мы хотим узнать, чем заняты люди в ветке master
, мы можем снова переключиться обратно с помощью git checkout master
.