User Tools

Site Tools


organization:git_usage

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
organization:git_usage [2015/06/30 18:23] dmitriyorganization:git_usage [2017/05/26 13:48] (current) dmitriy
Line 4: Line 4:
  
   - ставится сам клиент git   - ставится сам клиент git
 +  - также хороший функционал для работы с git предоставляет PhpStorm
   - опционально ставится визуальный клиент (для windows рекомендуется TortoiseGit, для опытных пользователей можно работать непосредственно с оболочкой командной строки).   - опционально ставится визуальный клиент (для windows рекомендуется TortoiseGit, для опытных пользователей можно работать непосредственно с оболочкой командной строки).
 +  
  
  
Line 14: Line 16:
 Публичный ключ заливается там где нужен доступ - на сервера, репозитории git и тп  Публичный ключ заливается там где нужен доступ - на сервера, репозитории git и тп 
 TortoiseGit работает через ключи Putty (.ppk формат), поэтому сгенеренный ключ надо пропустить через утилиту Puttygen TortoiseGit работает через ключи Putty (.ppk формат), поэтому сгенеренный ключ надо пропустить через утилиту Puttygen
- 
- 
  
  
Line 23: Line 23:
   * полный дамп проекта в папке SQL. (в случае если объем данных излишне велик имеет смысл хранить только схему, без данных)   * полный дамп проекта в папке SQL. (в случае если объем данных излишне велик имеет смысл хранить только схему, без данных)
   * храним историю апдейтов как набор sql запросов формате updates.sql   * храним историю апдейтов как набор sql запросов формате updates.sql
-Сами файлы на лив и тестовый сайты не заливаем, храним только в svn+ 
 +=== именование коммитов === 
 + 
 +каждый коммит маркируется следующим образом 
 +\\ [проект (при необходимости)] [-> ветка при наличии] - краткое ОСМЫСЛЕННОЕ описание коммита 
 +\\ [служебные пояснения 1 - что входит в состав коммита] 
 +\\ [служебные пояснения 2 - что входит в состав коммита
 +\\ ... 
 + 
 +//Примеры// 
 + 
 +grunt - setup imagemin, tinyimg sequence 
 + 
 +consumerawareness - layout updates 
 +\\ oprah trial page - new layout for diane, eltrial, eltrialwith2, oprahtrial 
 +\\ grunt build change - deployment scripts  
 + 
 +если коммит делается в ветке, надо указывать ветку 
 +\\ naturaful -> pnk2 skin update - section "About Us" updated 
 +\\ Sections backgrounds updated for Pnk skins  
    
 +
 +===== работа над задачей с применением веток =====
 +
 +
 +Целесообразно выделять отдельные задачи проекта в ветки, для предотвращения проблем со стабильностью проекта на master ветке при параллельной разработке. При этом в цикле разработке можно выделить следующие этапы
 +
 +  - программирование
 +  - деплой на тестовую платформу
 +  - проверка и тестирование тестовой платформы (затем правки при необходимости)
 +  - деплой на лив платформу
 +  - проверка и тестирование лив платформы (затем правки при необходимости)
 +
 +Во время работки на ветке сам разработчик определяет возможность и необходимость "служебных" коммитов. Обязательное слияние  с master веткой может проводиться 2 вариантами 
 +  * либо перед деплоем данных на лив платформу (в случае необходимости лив правок дополнительные коммиты делаются сразу в master ветке)
 +  * либо после всего цикла разработки 
 +
 +При слиянии в master (через rebase) хорошей практикой будет squash'ить коммиты (свертывать множественные коммиты в единый) с ОСМЫСЛЕННЫМ описанием функционала сборного коммита
 +
 +В любом случае после достижения стабильного релиза текущая ветка помечается тегом релиза в соответствии с http://semver.org/lang/ru/ В случае если проект содержит составные части, следует использовать нумерацию релиза для конкретной составной части
 +
 +
 +//Примеры//
 +
 +  * 1.1.2
 +  * 1.1.0-consumerawareness
 + 
 +
  
organization/git_usage.1435688614.txt.gz · Last modified: (external edit)