ããã³ããšã³ãéçºããŒã åãã®å¹æçãªGitã¯ãŒã¯ãããŒæŠç¥ã解説ããã©ã³ãã¢ãã«ããã¹ããã©ã¯ãã£ã¹ãåæ»ãªå ±åäœæ¥ã®ãã³ããåŠã³ãŸãã
ããã³ããšã³ãã®ããŒãžã§ã³ç®¡çïŒããŒã ã®ããã®Gitã¯ãŒã¯ãããŒæŠç¥
å€åã®æ¿ããããã³ããšã³ãéçºã®äžçã§ã¯ã广çãªããŒãžã§ã³ç®¡çã¯ã³ãŒãã®ç®¡çãããŒã ã¡ã³ããŒãšã®ååããããžã§ã¯ãã®å®å®æ§ã確ä¿ããããã«äžå¯æ¬ ã§ãã忣ããŒãžã§ã³ç®¡çã·ã¹ãã ã§ããGitã¯ãæ¥çæšæºãšãªã£ãŠããŸããããããåã«Gitã䜿çšããã ãã§ã¯äžååã§ããããã®å©ç¹ãæå€§éã«åŒãåºãããã«ã¯ãæç¢ºã«å®çŸ©ãããGitã¯ãŒã¯ãããŒæŠç¥ãæ¡çšããããšãäžå¯æ¬ ã§ãã
ãªãããã³ããšã³ãéçºã§Gitã¯ãŒã¯ãããŒãéèŠãªã®ãïŒ
ããã³ããšã³ãã®ãããžã§ã¯ãã§ã¯ãè€æ°ã®éçºè ãåæã«ç°ãªãæ©èœããã°ä¿®æ£ã«åãçµãããšããããããŸããæç¢ºãªã¯ãŒã¯ãããŒããªããã°ãã³ã³ããªã¯ããçºçããã³ãŒãã®å質ãäœäžããéçºããã»ã¹ãæ··æ²ãšããå¯èœæ§ããããŸããå ç¢ãªGitã¯ãŒã¯ãããŒã¯ãããã€ãã®å©ç¹ãæäŸããŸãïŒ
- ã³ã©ãã¬ãŒã·ã§ã³ã®åäž: æç¢ºã«å®çŸ©ãããã¯ãŒã¯ãããŒã¯ããã©ã³ãã³ã°ãããŒãžãã³ãŒãã¬ãã¥ãŒã«é¢ããæç¢ºãªã¬ã€ãã©ã€ã³ã確ç«ããããšã§ãã³ã©ãã¬ãŒã·ã§ã³ãå¹çåããŸãã
- ã³ãŒãå質ã®åäž: ã¯ãŒã¯ãããŒå ã«ã³ãŒãã¬ãã¥ãŒããã»ã¹ãçµ±åããããšã§ãæœåšçãªåé¡ãæ©æã«ç¹å®ããããé«å質ãªã³ãŒãã«ã€ãªãããŸãã
- ãã°ä¿®æ£ã®ç°¡çŽ å: ãã©ã³ãã³ã°æŠç¥ã«ãããã¡ã€ã³ã®ã³ãŒãããŒã¹ã劚ããããšãªããåé¢ãããç°å¢ã§ãã°ä¿®æ£ãå¯èœã«ãªããŸãã
- å¹ççãªæ©èœéçº: ãã£ãŒãã£ãŒãã©ã³ãã«ãããéçºè ã¯ç¬ç«ããŠæ°æ©èœã«åãçµãããšãã§ããã¡ã€ã³ãã©ã³ãã«ãã°ãæ··å ¥ããããªã¹ã¯ãæå°éã«æããŸãã
- ããŒã«ããã¯ã®å®¹æå: Gitã®ããŒãžã§ã³ç®¡çæ©èœã«ãããå¿ èŠã«å¿ããŠä»¥åã®ããŒãžã§ã³ã®ã³ãŒãã«ç°¡åã«æ»ãããšãã§ãããšã©ãŒã®åœ±é¿ã軜æžããŸãã
- ãããã€ã®å¹çå: æç¢ºãªã¯ãŒã¯ãããŒã¯èªåãããã€ã容æã«ããåžžã«ææ°ã®å®å®ããããŒãžã§ã³ã®ã³ãŒããå©çšå¯èœã§ããããšãä¿èšŒããŸãã
äžè¬çãªGitã¯ãŒã¯ãããŒæŠç¥
ããã³ããšã³ãéçºã§ã¯ãããã€ãã®Gitã¯ãŒã¯ãããŒæŠç¥ãäžè¬çã«äœ¿çšãããŠããŸããåæŠç¥ã«ã¯ããããé·æãšçæããããæé©ãªéžæã¯ãããžã§ã¯ããšããŒã ã®ç¹å®ã®ããŒãºã«ãã£ãŠç°ãªããŸãã
1. ãã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒ
ãã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒã¯ãæã人æ°ã®ããæŠç¥ã®1ã€ã§ããããã¯ãåæ©èœããã°ä¿®æ£ããšã«æ°ãããã©ã³ããäœæããããšãäžå¿ã«å±éãããŸãããã®åé¢ã«ãããæ©èœã«é¢ããäœæ¥ãçµ±åã®æºåãæŽããŸã§ã`main`ïŒãŸãã¯`master`ïŒãã©ã³ãã«çŽæ¥åœ±é¿ãäžããªãããšãä¿èšŒãããŸãã
æé ïŒ
- æ°ããæ©èœãŸãã¯ãã°ä¿®æ£ããšã«`main`ïŒãŸãã¯`master`ïŒããæ°ãããã©ã³ããäœæããŸãïŒäŸïŒ`feature/add-user-authentication`ã`bugfix/resolve-css-issue`ïŒã
- ãã£ãŒãã£ãŒãã©ã³ãã§ã³ãŒããéçºãããã¹ãããŸãã
- ãã£ãŒãã£ãŒãã©ã³ãã«å€æŽã宿çã«ã³ãããããŸãã
- æ©èœã宿ãããã¹ããå®äºãããããã£ãŒãã£ãŒãã©ã³ãã`main`ã«ããŒãžããããã®ãã«ãªã¯ãšã¹ãïŒPRïŒãäœæããŸãã
- ãã«ãªã¯ãšã¹ãã§ã³ãŒãã¬ãã¥ãŒã宿œãããŸãã
- ã³ãŒãã¬ãã¥ãŒãæ¿èªããããšããã£ãŒãã£ãŒãã©ã³ãã`main`ã«ããŒãžãããŸãã
- ãã®åŸããã£ãŒãã£ãŒãã©ã³ãã¯åé€ãããŸãã
å©ç¹ïŒ
- åé¢: æ©èœéçºãã¡ã€ã³ã®ã³ãŒãããŒã¹ããåé¢ããŸãã
- ã³ãŒãã¬ãã¥ãŒ: çµ±ååã«ã³ãŒãã¬ãã¥ãŒã匷å¶ããŸãã
- 䞊è¡éçº: è€æ°ã®éçºè ãåæã«ç°ãªãæ©èœã«åãçµãããšãã§ããŸãã
èæ ®äºé ïŒ
- æ©èœéçºã«æéãããããšããã©ã³ããé·æéåç¶ããå¯èœæ§ããããŸãã
- ãã«ãªã¯ãšã¹ãã®æ éãªç®¡çãå¿ èŠã§ãã
- ãã©ã³ãã`main`ãã倧ããåå²ãããšãããŒãžã³ã³ããªã¯ããçºçããå¯èœæ§ããããŸãã
äŸïŒ
ããããŒã ãeã³ããŒã¹ãŠã§ããµã€ããéçºããŠãããšããŸããããéçºè ãæ°ããååãã£ã«ã¿ãªã³ã°æ©èœã®å®è£ ãæ åœããŸãã圌ãã¯`main`ãã`feature/product-filtering`ãšããååã®ãã©ã³ããäœæããæ©èœãå®è£ ããã³ãŒãã¬ãã¥ãŒåŸã«ããã`main`ã«ããŒãžããããã®ãã«ãªã¯ãšã¹ããäœæããŸãã
2. Gitflowã¯ãŒã¯ãããŒ
Gitflowã¯ããã粟巧ãªã¯ãŒã¯ãããŒã§ãããç°ãªãç®çã®ããã«ç¹å®ã®ãã©ã³ããå®çŸ©ããŸããæ©èœã®çµ±åãã©ã³ããšããŠæ©èœãã`develop`ãã©ã³ããããªãªãŒã¹æºåã®ããã®ãªãªãŒã¹ãã©ã³ããå°å ¥ããŸãããã®ã¢ãããŒãã¯ã宿çãªãªãªãŒã¹ãããã峿 ŒãªããŒãžã§ã³ç®¡çãå¿ èŠãªãããžã§ã¯ãã«æçã§ãã
ãã©ã³ãïŒ
- `main` (ãŸã㯠`master`): æ¬çªç°å¢ã«å¯Ÿå¿ããã³ãŒãã衚ããŸãã
- `develop`: æ©èœã®çµ±åãã©ã³ããšããŠæ©èœããŸãã
- `feature/*`: æ°æ©èœéçºã®ããã®ãã©ã³ãã§ã`develop`ããåå²ããŸãã
- `release/*`: ãªãªãŒã¹æºåã®ããã®ãã©ã³ãã§ã`develop`ããåå²ããŸãã
- `hotfix/*`: æ¬çªç°å¢ã®é倧ãªãã°ã«å¯Ÿå¿ããããã®ãã©ã³ãã§ã`main`ããåå²ããŸãã
æé ïŒ
- æ°æ©èœã¯`develop`ããåå²ãã`feature/*`ãã©ã³ãã§éçºãããŸãã
- æ©èœã宿ãããšã`develop`ã«ããŒãžãããŸãã
- ãªãªãŒã¹ã®æºåãæŽããšã`develop`ãã`release/*`ãã©ã³ããäœæãããŸãã
- `release/*`ãã©ã³ãã¯æçµãã¹ããšãã°ä¿®æ£ã«äœ¿çšãããŸãã
- ãªãªãŒã¹æºåãå®äºãããšã`main`ãš`develop`ã®äž¡æ¹ã«ããŒãžãããŸãã
- `main`ãã©ã³ãã«ã¯ãªãªãŒã¹ããŒãžã§ã³ã§ã¿ã°ãä»ããããŸãã
- æ¬çªç°å¢ã§é倧ãªãã°ãçºèŠãããå Žåã`main`ãã`hotfix/*`ãã©ã³ããäœæãããŸãã
- ãã°ã¯`hotfix/*`ãã©ã³ãã§ä¿®æ£ããã倿Žã¯`main`ãš`develop`ã®äž¡æ¹ã«ããŒãžãããŸãã
å©ç¹ïŒ
- æ§é åããããªãªãŒã¹: ãªãªãŒã¹ç®¡çã®ããã®æç¢ºãªããã»ã¹ãæäŸããŸãã
- ããããã£ãã¯ã¹ç®¡ç: æ¬çªç°å¢ã®åé¡ã«è¿ éã«å¯Ÿå¿ã§ããŸãã
- 䞊è¡éçº: è€æ°ã®æ©èœã®äžŠè¡éçºããµããŒãããŸãã
èæ ®äºé ïŒ
- ãã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒãããè€éã§ãã
- å°èŠæš¡ãªãããžã§ã¯ãã«ã¯éå°ãªå ŽåããããŸãã
- æ éãªãã©ã³ã管çãå¿ èŠã§ãã
äŸïŒ
ãããœãããŠã§ã¢äŒç€Ÿãååæããšã«ã¢ããªã±ãŒã·ã§ã³ã®æ°ããŒãžã§ã³ããªãªãŒã¹ããŠããŸãã圌ãã¯Gitflowã䜿çšããŠãªãªãŒã¹ããã»ã¹ã管çããŸããæ©èœéçºã¯`feature/*`ãã©ã³ãã§è¡ããããã®åŸ`develop`ãã©ã³ãã«çµ±åãããŸãã1.0ãªãªãŒã¹ã®æºåã®ããã«`develop`ãã`release/1.0`ãã©ã³ããäœæãããŸãããã¹ããšãã°ä¿®æ£ã®åŸã`release/1.0`ãã©ã³ãã¯`main`ã«ããŒãžããã`v1.0`ãšããŠã¿ã°ä»ããããŸãããªãªãŒã¹åŸã«æ¬çªç°å¢ã§é倧ãªãã°ãçºèŠãããå Žåã`main`ãã`hotfix/critical-bug`ãã©ã³ããäœæããããã°ãä¿®æ£ããã倿Žã`main`ãš`develop`ã®äž¡æ¹ã«ããŒãžãããŸãã
3. ãã©ã³ã¯ããŒã¹éçº
ãã©ã³ã¯ããŒã¹éçºïŒTBDïŒã¯ãåäžã®`trunk`ïŒéåžžã¯`main`ãŸãã¯`master`ïŒãã©ã³ãã«ã³ãŒããé »ç¹ã«çµ±åããããšãéèŠãããããã·ã³ãã«ãªã¯ãŒã¯ãããŒã§ãããã®ã¢ãããŒãã«ã¯é«åºŠãªèŠåŸãšèªåãã¹ããå¿ èŠã§ãããéçºãµã€ã¯ã«ã®ççž®ãšããŒãžã³ã³ããªã¯ãã®åæžã«ã€ãªããå¯èœæ§ããããŸãã
æé ïŒ
- éçºè ã¯`main`ããçåœã®ãã£ãŒãã£ãŒãã©ã³ããäœæããŸãã
- 倿Žã¯ãã£ãŒãã£ãŒãã©ã³ãã«é »ç¹ã«ã³ããããããŸãã
- ãã£ãŒãã£ãŒãã©ã³ãã¯ã§ããã ãæ©ããçæ³çã«ã¯1æ¥ã«è€æ°å`main`ã«ããŒãžãããŸãã
- ã³ãŒãã®å質ã確ä¿ããããã«ãåºç¯ãªèªåãã¹ãã䜿çšãããŸãã
- ãªãªãŒã¹æºåãæŽã£ãŠããªãæ©èœã¯ããã£ãŒãã£ãŒãã©ã°ã®èåŸã«é ãããšãã§ããŸãã
å©ç¹ïŒ
- éçºãµã€ã¯ã«ã®ççž®: é »ç¹ãªçµ±åã«ãããããŒãžã³ã³ããªã¯ãã®ãªã¹ã¯ãæžå°ããéçºããã»ã¹ãå éããŸãã
- ããŒãžã³ã³ããªã¯ãã®åæž: å°ããé »ç¹ãªããŒãžã«ãããã³ã³ããªã¯ãã®å¯èœæ§ãæå°éã«æããããŸãã
- ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ãšç¶ç¶çããªããªãŒïŒCI/CDïŒ: TBDã¯CI/CDãã€ãã©ã€ã³ã«é©ããŠããŸãã
èæ ®äºé ïŒ
- é«åºŠãªèŠåŸãšèªåãã¹ããå¿ èŠã§ãã
- å€§èŠæš¡ãªããŒã ãè€éãªãããžã§ã¯ãã§ã¯é£ããå ŽåããããŸãã
- ãã£ãŒãã£ãŒãã©ã°ã®å¹æçãªäœ¿çšãå¿ èŠã§ãã
äŸïŒ
ã·ã³ã°ã«ããŒãžã¢ããªã±ãŒã·ã§ã³ïŒSPAïŒãéçºããŠããããŒã ããã©ã³ã¯ããŒã¹éçºãæ¡çšããŸããéçºè ã¯`main`ããå°ããçŠç¹ãçµã£ããã£ãŒãã£ãŒãã©ã³ããäœæããé »ç¹ã«ã³ããããè¡ãã1æ¥ã«è€æ°å倿Žã`main`ã«ããŒãžããŸããã¢ããªã±ãŒã·ã§ã³ãå®å®ããŠããããšã確èªããããã«ãèªåãã¹ããç¶ç¶çã«å®è¡ãããŸãããŸã ãªãªãŒã¹æºåãã§ããŠããªãæ©èœã¯ãã£ãŒãã£ãŒãã©ã°ã®èåŸã«é ãããããŒã ã¯ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«åœ±é¿ãäžããããšãªãæ°ããã³ãŒããç¶ç¶çã«ãããã€ã§ããŸãã
4. GitHubãããŒ
GitHubãããŒã¯ãç¹ã«å°èŠæš¡ãªããŒã ãã·ã³ãã«ãªãããžã§ã¯ãã«é©ãã軜éãªã¯ãŒã¯ãããŒã§ãããã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒã«äŒŒãŠããŸãããç¶ç¶çãããã€ã¡ã³ãããã匷ãéèŠãããŠããŸãã
æé ïŒ
- æ°ããæ©èœãŸãã¯ãã°ä¿®æ£ããšã«`main`ããæ°ãããã©ã³ããäœæããŸãã
- ãã£ãŒãã£ãŒãã©ã³ãã§ã³ãŒããéçºãããã¹ãããŸãã
- ãã£ãŒãã£ãŒãã©ã³ãã«å€æŽã宿çã«ã³ãããããŸãã
- æ©èœã宿ãããã¹ããå®äºãããããã£ãŒãã£ãŒãã©ã³ãã`main`ã«ããŒãžããããã®ãã«ãªã¯ãšã¹ããäœæããŸãã
- ãã«ãªã¯ãšã¹ãã§ã³ãŒãã¬ãã¥ãŒã宿œãããŸãã
- ãã«ãªã¯ãšã¹ããæ¿èªããããšããã£ãŒãã£ãŒãã©ã³ãã¯`main`ã«ããŒãžãããçŽã¡ã«æ¬çªç°å¢ã«ãããã€ãããŸãã
- ãã®åŸããã£ãŒãã£ãŒãã©ã³ãã¯åé€ãããŸãã
å©ç¹ïŒ
- ã·ã³ãã«ã§çè§£ãããã: åŠç¿ãšå®è£ ãç°¡åã§ãã
- è¿ éãªãããã€ãµã€ã¯ã«: æ¬çªç°å¢ãžã®é »ç¹ãªãããã€ã奚å±ããŸãã
- å°èŠæš¡ããŒã ã«é©ããŠãã: å°èŠæš¡ãªããŒã ãã·ã³ãã«ãªãããžã§ã¯ãã§ããŸãæ©èœããŸãã
èæ ®äºé ïŒ
- 峿 ŒãªãªãªãŒã¹ã¹ã±ãžã¥ãŒã«ãæã€è€éãªãããžã§ã¯ãã«ã¯é©ããŠããªãå ŽåããããŸãã
- ããŒã å ã§ã®é«åºŠãªä¿¡é Œãšååãå¿ èŠã§ãã
- ãããã€ããã»ã¹ã«ãããé«åºŠãªèªååãåæãšããŠããŸãã
äŸïŒ
å°èŠæš¡ãªããŒã ãã·ã³ãã«ãªã©ã³ãã£ã³ã°ããŒãžãæ§ç¯ããŠããŸãã圌ãã¯GitHubãããŒã䜿çšããŠã³ãŒãã管çããŸããéçºè ã¯ã©ã³ãã£ã³ã°ããŒãžã®åæ°ããã»ã¯ã·ã§ã³ã®ããã«ãã£ãŒãã£ãŒãã©ã³ããäœæããé »ç¹ã«ã³ããããè¡ããã³ãŒãã¬ãã¥ãŒåŸã«å€æŽã`main`ã«ããŒãžããŸãã`main`ãžã®ãã¹ãŠã®ã³ãããã¯ãèªåçã«ã©ã€ããŠã§ããµã€ãã«ãããã€ãããŸãã
é©åãªGitã¯ãŒã¯ãããŒã®éžæ
ããã³ããšã³ãéçºããŒã ã«ãšã£ãŠæé©ãªGitã¯ãŒã¯ãããŒã¯ã以äžãå«ãããã€ãã®èŠå ã«ãã£ãŠæ±ºãŸããŸãïŒ
- ãããžã§ã¯ãã®èŠæš¡ãšè€éã: ããå€§èŠæš¡ã§è€éãªãããžã§ã¯ãã¯ãGitflowã®ãããªããæ§é åãããã¯ãŒã¯ãããŒããæ©æµãåããå¯èœæ§ããããŸãã
- ããŒã ã®èŠæš¡ãšçµéš: çµéšã®æµ ãå°èŠæš¡ãªããŒã ã¯ãGitHubãããŒã®ãããªããã·ã³ãã«ãªã¯ãŒã¯ãããŒã奜ããããããŸããã
- ãªãªãŒã¹é »åºŠ: é »ç¹ãªãªãªãŒã¹ããããããžã§ã¯ãã¯ããã©ã³ã¯ããŒã¹éçºããæ©æµãåããå¯èœæ§ããããŸãã
- ããŒã æå: ã¯ãŒã¯ãããŒã¯ããŒã ã®æåã奜ã¿ã«åã£ãŠããã¹ãã§ãã
- CI/CDãã€ãã©ã€ã³: ã¯ãŒã¯ãããŒã¯ããŒã ã®CI/CDãã€ãã©ã€ã³ãšäºææ§ãããã¹ãã§ãã
以äžã¯ãGitã¯ãŒã¯ãããŒãéžæããéã«èæ ®ãã¹ãäž»èŠãªèŠå ããŸãšãã衚ã§ãïŒ
èŠå | ãã£ãŒãã£ãŒãã©ã³ã | Gitflow | ãã©ã³ã¯ããŒã¹ | GitHubãã㌠|
---|---|---|---|---|
ãããžã§ã¯ãã®è€éã | äž | é« | äœïœäž | äœ |
ããŒã èŠæš¡ | äžïœå€§ | 倧 | å°ïœäž | å° |
ãªãªãŒã¹é »åºŠ | äžçšåºŠ | 宿ç | é »ç¹ | éåžžã«é »ç¹ |
CI/CDçµ±å | è¯ | äžçšåºŠ | åª | åª |
ããã³ããšã³ãéçºã«ãããGitã¯ãŒã¯ãããŒã®ãã¹ããã©ã¯ãã£ã¹
éžæããGitã¯ãŒã¯ãããŒã«é¢ãããã以äžã®ãã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ãã³ã©ãã¬ãŒã·ã§ã³ãã³ãŒãå質ãããã³å šäœçãªéçºå¹çãåäžãããããšãã§ããŸãïŒ
- æå³ã®ãããã©ã³ãåã䜿çšãã: ãã©ã³ãåã¯èª¬æçã§ããããã©ã³ãã®ç®çãæç¢ºã«ç€ºãå¿ èŠããããŸãïŒäŸïŒ`feature/add-user-profile`ã`bugfix/resolve-responsive-issue`ïŒã
- é »ç¹ã«ã³ããããã: æç¢ºã§ç°¡æœãªã³ãããã¡ãã»ãŒãžãšãšãã«ãå°ããé »ç¹ãªã³ããããè¡ããŸããããã«ããã倿Žã®è¿œè·¡ãå¿ èŠã«å¿ãã以åã®ããŒãžã§ã³ãžã®åŸ©åž°ã容æã«ãªããŸãã
- è¯ãã³ãããã¡ãã»ãŒãžãæžã: ã³ãããã¡ãã»ãŒãžã¯ãã³ãããã®ç®çãšé¢é£ããã³ã³ããã¹ãã説æããå¿ èŠããããŸããåœä»€åœ¢ïŒäŸïŒãAdd user authenticationãããFix CSS styling issueãïŒãªã©ãäžè²«ãã圢åŒã«åŸããŸãã
- 宿çã«ãã«ãã: ãªã¢ãŒããªããžããªãã宿çã«å€æŽããã«ããŠãããŒã«ã«ãã©ã³ããææ°ã®ç¶æ ã«ä¿ã¡ãŸããããã«ãããããŒãžã³ã³ããªã¯ãã®ãªã¹ã¯ãæå°éã«æããããšãã§ããŸãã
- ã³ã³ããªã¯ããæ éã«è§£æ±ºãã: ããŒãžã³ã³ããªã¯ããçºçããå Žåã¯ãæ éãã€åŸ¹åºçã«è§£æ±ºããŸããã³ã³ããªã¯ãã®åå ãšãªã£ãŠãã倿Žãçè§£ããé©åãªè§£æ±ºçãéžæããŸãã
- ã³ãŒãã¬ãã¥ãŒ: ã³ãŒãã®å質ãšäžè²«æ§ã確ä¿ããããã«ãã³ãŒãã¬ãã¥ãŒããã»ã¹ãå°å ¥ããŸãããã«ãªã¯ãšã¹ãã䜿çšããŠã³ãŒãã¬ãã¥ãŒãä¿é²ããŸãã
- èªåãã¹ã: CI/CDãã€ãã©ã€ã³ã«èªåãã¹ããçµ±åããŠããã°ãæ©æã«çºèŠãããªã°ã¬ãã·ã§ã³ãé²ããŸãã
- ãã£ãŒãã£ãŒãã©ã°ã䜿çšãã: ãã£ãŒãã£ãŒãã©ã°ã䜿çšããŠãæªå®æã®æ©èœããŠãŒã¶ãŒããé ããããA/Bãã¹ããæå¹ã«ãããããŸãã
- ã¯ãŒã¯ãããŒãææžåãã: éžæããGitã¯ãŒã¯ãããŒãæç¢ºã«ææžåãããã¹ãŠã®ããŒã ã¡ã³ããŒãç°¡åã«ã¢ã¯ã»ã¹ã§ããããã«ããŸãã
- ã³ãŒãã¹ã¿ã€ã«ã匷å¶ãã: ãªã³ã¿ãŒããã©ãŒããã¿ãŒã䜿çšããŠããããžã§ã¯ãå šäœã§äžè²«ããã³ãŒãã¹ã¿ã€ã«ã匷å¶ããŸãã
- Gitããã¯ã䜿çšãã: Gitããã¯ãå®è£ ããŠãã³ããããããã·ã¥ã®åã«ãªã³ã¿ãŒããã©ãŒããã¿ãŒããã¹ãã®å®è¡ãªã©ã®ã¿ã¹ã¯ãèªååããŸãã
- ãã©ã³ããçåœã«ä¿ã€: ãã£ãŒãã£ãŒãã©ã³ãã¯çåœã«ä¿ã€ããšãç®æããããŒãžã³ã³ããªã¯ãã®ãªã¹ã¯ãæå°éã«æããé »ç¹ãªçµ±åã奚å±ããŸãã
- ããŒãžåŸã«ãã©ã³ããåé€ãã: `main`ãŸãã¯`develop`ã«ããŒãžãããåŸããã£ãŒãã£ãŒãã©ã³ããåé€ããŠããªããžããªãã¯ãªãŒã³ã§æŽçãããç¶æ ã«ä¿ã¡ãŸãã
Gitã¯ãŒã¯ãããŒç®¡çã®ããã®ããŒã«
ããã€ãã®ããŒã«ããããã³ããšã³ãéçºã«ãããGitã¯ãŒã¯ãããŒç®¡çãå¹çåããã®ã«åœ¹ç«ã¡ãŸãïŒ
- GitHub, GitLab, Bitbucket: ãããã¯ãã³ã©ãã¬ãŒã·ã§ã³ãã³ãŒãã¬ãã¥ãŒãCI/CDã®ããã®æ©èœãæäŸãã人æ°ã®Gitãã¹ãã£ã³ã°ãã©ãããã©ãŒã ã§ãã
- SourceTree, GitKraken: ãããã¯ãäžè¬çãªGitæäœãç°¡çŽ åããGitã®GUIã¯ã©ã€ã¢ã³ãã§ãã
- CI/CDããŒã« (äŸïŒJenkins, CircleCI, Travis CI, GitLab CI): ãããã®ããŒã«ã¯ããã«ãããã¹ãããããã€ããã»ã¹ãèªååããŸãã
- ã³ãŒãã¬ãã¥ãŒããŒã« (äŸïŒCrucible, Reviewable): ãããã®ããŒã«ã¯ãã€ã³ã©ã€ã³ã³ã¡ã³ããã³ãŒãå·®å衚瀺ãªã©ãã³ãŒãã¬ãã¥ãŒã®ããã®é«åºŠãªæ©èœãæäŸããŸãã
- ã¿ã¹ã¯ç®¡çããŒã« (äŸïŒJira, Trello, Asana): Gitãã¿ã¹ã¯ç®¡çããŒã«ãšçµ±åããŠã鲿ã远跡ããã³ããããç¹å®ã®ã¿ã¹ã¯ã«ãªã³ã¯ããŸãã
äŸïŒGitHubã䜿çšãããã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒã®å®è£
GitHubã䜿çšããŠãã£ãŒãã£ãŒãã©ã³ãã¯ãŒã¯ãããŒã説æããŸãããïŒ
- GitHubã§æ°ãããªããžããªãäœæããŸãã
- ãªããžããªãããŒã«ã«ãã·ã³ã«ã¯ããŒã³ããŸãïŒ
```bash
git clone
``` - æ©èœã®ããã«æ°ãããã©ã³ããäœæããŸãïŒ ```bash git checkout -b feature/add-responsive-design ```
- ã³ãŒãã«å€æŽãå ããã³ãããããŸãïŒ ```bash git add . git commit -m "ã¬ã¹ãã³ã·ããã¶ã€ã³ã®ã¹ã¿ã€ã«ã远å " ```
- ãã©ã³ããGitHubã«ããã·ã¥ããŸãïŒ ```bash git push origin feature/add-responsive-design ```
- GitHubã§ãã«ãªã¯ãšã¹ããäœæããŸãïŒ GitHubã®ãªããžããªã«ç§»åãã`feature/add-responsive-design`ãã©ã³ããã`main`ãã©ã³ããžã®æ°ãããã«ãªã¯ãšã¹ããäœæããŸãã
- ã³ãŒãã¬ãã¥ãŒããªã¯ãšã¹ãããŸãïŒ ãã«ãªã¯ãšã¹ãã«ã¬ãã¥ãŒæ åœè ãå²ãåœãŠãã³ãŒãã®ã¬ãã¥ãŒãäŸé ŒããŸãã
- ãã£ãŒãããã¯ã«å¯Ÿå¿ããŸãïŒ ã³ãŒãã¬ãã¥ãŒããã®ãã£ãŒãããã¯ãåãå ¥ããå¿ èŠãªå€æŽãå ããŸãã倿Žããã£ãŒãã£ãŒãã©ã³ãã«ã³ãããããGitHubã«ããã·ã¥ããŸãããã«ãªã¯ãšã¹ãã¯èªåçã«æŽæ°ãããŸãã
- ãã«ãªã¯ãšã¹ããããŒãžããŸãïŒ ã³ãŒãã¬ãã¥ãŒãæ¿èªããããããã«ãªã¯ãšã¹ãã`main`ãã©ã³ãã«ããŒãžããŸãã
- ãã£ãŒãã£ãŒãã©ã³ããåé€ããŸãïŒ ãã«ãªã¯ãšã¹ããããŒãžãããåŸã`feature/add-responsive-design`ãã©ã³ããåé€ããŸãã
çµè«
é©åãªGitã¯ãŒã¯ãããŒæŠç¥ãéžæããå®è£ ããããšã¯ãããã³ããšã³ãéçºãæåãããããã«äžå¯æ¬ ã§ãããããžã§ã¯ãã®ããŒãºãããŒã ã®èŠæš¡ããªãªãŒã¹é »åºŠãæ éã«èæ ®ããããšã§ãããŒã ã¯èŠä»¶ã«æãé©ããã¯ãŒã¯ãããŒãéžæã§ããŸãããã¹ããã©ã¯ãã£ã¹ã培åºããé©åãªããŒã«ã掻çšããã³ã©ãã¬ãŒã·ã§ã³ãã³ãŒãå質ãéçºå¹çãæé©åããããã«ã¯ãŒã¯ãããŒãç¶ç¶çã«æ¹åããããšãå¿ããªãã§ãã ãããåæŠç¥ã®ãã¥ã¢ã³ã¹ãçè§£ããããšã§ã仿¥ã®ããŒã¹ã®éããœãããŠã§ã¢éçºç°å¢ã«ãããŠãããŒã ã¯é«å質ãªããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ãå¹ççãã€ç¢ºå®ã«æäŸã§ããããã«ãªããŸããç¹å®ã®ããŒã ããããžã§ã¯ãã®ããŒãºã«å®ç§ã«åãããããã«ããããã®ã¯ãŒã¯ãããŒãé©å¿ãããã«ã¹ã¿ãã€ãºããããšãæããã«ãååçã§çç£çãªéçºç°å¢ãè²ãã§ãã ããã