Git FAC (часто используемые команды)

Как мне создать и держать свежей локальную ветку develop?

Для начала, в соответствии с моделью ветвления процесса MODX разработки, вы не будете коммитить в вашу develop ветку, поэтому ее легко обновлять.

    $ git fetch upstream
    $ git checkout develop
    Switched to branch "develop"
    $ git merge --ff-only upstream/develop
	

Это означает, что modxcms или другой репозиторий установлен как upstream в remote. (git remote manpage: http://www.kernel.org/pub/software/scm/git/docs/git-remote.html)

Как мне создать тематическую ветку?

Если вы только что влили свежие изменения из ветки develop из upstream репозитория, тогда это очень просто:

    $ git checkout develop
    Switched to branch "develop"
    $ git checkout -b myFeatureBranchName
	

Как следует называть тематические ветки?

Если вы правите ошибку из тикета в трекере ошибок (пожалуйста, создайте сначала тикет, если его нет), тогда вы можете назвать вашу ветку "bug-xxxx", где xxxx - номер тикета из трекера ошибок.

    $ git checkout -b bug-1234

Если вы работаете над "улучшением" в трекере ошибок, используйте префикс "impr-".

    $ git checkout -b impr-2345
	

Если вы работаете над задачей, которая не имеет тикета, вы можете назвать ветку как угодно, кроме слов master, develop, release-, or hotfix-.

    $ git checkout -b myAwesomeFeature
	

Нужно ли мне создавать новую тематическую ветку на каждый тикет, над которым я работаю?

Да.

Как мне сохранять свежесть мой ветки относительно develop ветки в upstream?

Если вы работаете над улучшением, которое занимает время, может быть полезным синхронизировать его с текущими изменениями из основного репозитория. Git позволяет "накатить" ваши коммиты поверх изменений в ветке develop с помощью команды rebase.

На самом деле, это хорошая практика делать это перед финальной отправкой коммитов в ваш форк для последующего pull request-а.

  $ git fetch upstream
  $ git checkout develop
  Switched to branch {{develop}}
  $ git merge --ff-only upstream/develop
  $ git checkout myfeature
  Switched to branch "myfeature"
  $ git rebase develop
	

Чтобы лучше разобраться, есть документация по git rebase: http://www.kernel.org/pub/software/scm/git/docs/git-rebase.html

Нужно ли мне думать о ветке master?

Нет, не нужно. Если вы хотите, вы можете. Но в общем это не критично для рабочего процесса разработчика.

  • Реклама

  • Недавние публикации

  • Недавние комментарии

© 2011 — 2014 MODX Беларусь
По всем вопросам обращаться в компанию Alroniks Experts