# å¼åå¢égithubå¼åæµç¨æå [TOC] æ¬æå®ä½äºä¸ºä½¿ç¨GITæ å忝å¼åæµç¨çå¼åå¢éæ°äººæä¾ä¸ä»½åèæåï¼å ¶ä¸çå 容为[æä»¬å ¬å¸](https://pacport.co.jp)ç åå¢éæéµå¾ªçä¸äºå¼åæµç¨æ åã ## 忝æµç¨è¯´æ ### ç®ä» 项ç®ä¸é¿æåå¨çä¸¤ä¸ªåæ¯ * `main`ï¼ä¸»åæ¯ï¼è´è´£è®°å½ä¸çº¿çæ¬çè¿ä»£ï¼è¯¥åæ¯ä»£ç ä¸çº¿ä¸ä»£ç æ¯å®å ¨ä¸è´çã `main` * `develop`ï¼å¼å忝ï¼è¯¥åæ¯è®°å½ç¸å¯¹ç¨³å®ççæ¬ï¼ææçfeature忝åbugfix忝é½ä»è¯¥åæ¯å建ã * `main` å `develop` åæ¯ä¸ºåä¿æ¤åæ¯ï¼ä¸æ¥åç´æ¥push å ¶å®åæ¯ä¸ºçæåæ¯ï¼å ¶å®æåè½å¼åä¹åéè¦å é¤ * `feature/*`ï¼ç¹æ§ï¼åè½ï¼åæ¯ï¼ç¨äºå¼åæ°çåè½ï¼ä¸åçåè½å建ä¸åçåè½åæ¯ï¼åè½åæ¯å¼åå®æå¹¶èªæµéè¿ä¹åï¼éè¦åå¹¶å° **develop** 忝ï¼ä¹åå é¤è¯¥åæ¯ã * `bugfix/*`ï¼bugä¿®å¤åæ¯ï¼ç¨äºä¿®å¤ä¸ç´§æ¥çbugï¼æ®ébugåéè¦å建bugfix忝å¼åï¼å¼åå®æèªæµæ²¡é®é¢ååå¹¶å° **develop** 忝åï¼å é¤è¯¥åæ¯ã * `release/*`ï¼åå¸åæ¯ï¼ç¨äºä»£ç ä¸çº¿åå¤ï¼è¯¥åæ¯ä»**develop**忝å建ï¼å建ä¹åç±æµè¯åå¦åå¸å°æµè¯ç¯å¢è¿è¡æµè¯ï¼æµè¯è¿ç¨ä¸åç°bugéè¦å¼å人åå¨è¯¥release忝ä¸è¿è¡bugä¿®å¤ï¼ææbugä¿®å¤å®åï¼å¨ä¸çº¿ä¹åï¼éè¦å并该release忝å°**master**忝å**develop**忝ã * `hotfix/*`ï¼ç´§æ¥bugä¿®å¤åæ¯ï¼è¯¥åæ¯åªæå¨ç´§æ¥æ åµä¸ä½¿ç¨ï¼ä»**master**忝å建ï¼ç¨äºç´§æ¥ä¿®å¤çº¿ä¸bugï¼ä¿®å¤å®æåï¼éè¦åå¹¶è¯¥åæ¯å°**master**åæ¯ä»¥ä¾¿ä¸çº¿ï¼åæ¶éè¦ååå¹¶å°**develop**忝ã ### å¿ è¯»æç« [å¢éä¸ç Git å®è·µ](http://www.open-open.com/lib/view/open1461324562769.html) [Git å¨å¢éä¸çæä½³å®è·µ--å¦ä½æ£ç¡®ä½¿ç¨Git Flow](http://www.open-open.com/lib/view/open1451353135339.html) ## 忝å½ä»¤è§è ### ç¹æ§ï¼åè½ï¼åæ¯ åè½åæ¯ç忝åç§°åºè¯¥ä¸ºè½å¤åç¡®æè¿°è¯¥åè½çè±æç®è¦è¡¨è¿° feature/忝åç§° ä¾å¦ï¼å¼åçåè½ä¸º *æ°å¢é®ä»¶éç¥åè½*ï¼åå¯ä»¥å建å称为 `feature/email-notify-add`ç忝ã ### bugä¿®å¤åæ¯ãç´§æ¥bugä¿®å¤åæ¯ bugä¿®å¤åæ¯ç忝åç§°å¯ä»¥ä¸ºJiraä¸bugä»£ç æè æ¯æè¿°è¯¥bugçè±æç®ç§° bugfix/忝åç§° hotfix/忝åç§° æ¯å¦ï¼ä¿®å¤çbugå¨jiraä¸ä»£å·ä¸º**MATERIAL-1**ï¼åå¯ä»¥å建ä¸ä¸ªå为`bugfix/MATERIAL-1`ç忝ã ### release忝 releaseåæ¯ä¸ºé¢åå¸åæ¯ï¼å½åä¸ºæ¬æ¬¡åå¸ç主è¦åè½è±æç®ç§° release/忝åç§° æ¯å¦ï¼*æ°å¢é®ä»¶éç¥åè½*ï¼åå¯ä»¥å建å称为 `release/email-notify-add`ç忝ã ## å¸¸ç¨æä½å½ä»¤ç®ä» æ¨èä½¿ç¨ [hub](https://github.com/github/hub) 代æ¿gitå½ä»¤ ### åºæ¬æä½ * git commit * git add [--all] * git push * git pull * git branch [-d] * git merge * git cherry-pick * git checkout [-b] BRANCH_NAME * git stash