ã¢ãã©ã·ã¢ã³ã®ãªã³ãã¬ãã¹å Git ãªããžããªç®¡çããŒã«ãStash ãåããŠçºè¡šããŠä»¥æ¥ãæ¬åœã«å€ãã®ããšããããŸãããç§ãã¡ãåæãªãªãŒã¹ãžåããŠæåã«å®è¡ããããšã¯ããŠãŒã¶ãŒã®çããã«æ¬¡ã®ãããªè³ªåãããããšã§ãããããžãã¹ã®æåã« Git ãéèŠãªçç±ã¯äœã§ãã? éçºè ã®ã¯ãŒã¯ãããŒã«ãããããã«ããã¯ã¯ã©ãã«ãããŸãã? éçºè ãããã«ããã¯ããããããã«ããŒã«ãå¿ èŠã«ãªãã®ã¯ã©ããªæã§ãã? ãããã 2 幎ãçµãŠããªãªãŒã¹æ°ã 18 ãšãªã£ãçŸåšã§ããç§ãã¡ã¯ãããã®è³ªåãé ã«å ¥ããŠããŸãã
ãããã£ãŠã3 åç®ã®ã¡ãžã£ãŒãªãªãŒã¹ãšãªã Stash 3 ã§ãããã 3 ã€ã®è³ªåã«å¯Ÿå¿ããã®ã¯åœç¶ã®æµãã§ãããå€èšèªãžã®å¯Ÿå¿ããã©ã³ã diff ã®æ°ããæ¹æ³ãæŽç·Žãããããã²ãŒã·ã§ã³ããŒãæããStash 3 ã¯ããŒã ãå¿ èŠãšããããã«å ã®æ©èœãå®çŸã (ãããŠããŒã ãå¿ èŠãšããªããã®ãçã) ãŸããã
忣åããŒã åãã®åæ£åããŒãžã§ã³ç®¡ç
ããŒã ã Git ãžç§»è¡ããã®ã¯ããã©ã³ããšããŒãžã䜿ã£ãã¯ãŒã¯ãããŒæ§èœãçããããã§ãããŸããäœæ¥ã®ã»ãšãã©ãå³åº§ã«å®äºã§ããããŒã«ã«ãªãªãã¬ãŒã·ã§ã³ãšé£æºããèœåãæŽ»çšããããã§ããã¡ã³ããŒã®æåšå°ãè±èªå以å€ã®åœããå€å€§éžã«ãŸãããããŒã ã«ãšã£ãŠãäžæ £ããªèšèªã§ããŒã«ã䜿çšããããããªãç¶æ³ããããŒãžã§ã³ç®¡çã·ã¹ãã åãæ¿ããé£ããããŠããŸãããç§ãã¡ã¯ãã®åé¡ç¹ã®æ¹åã«ä¹ãåºããŸããã
åœéããŒã ã®ã¡ã³ããŒã¯ãè±èªããã©ã³ã¹èªããã€ãèªãæ¥æ¬èªã§ Stash ã䜿çšã§ããããã«ãªããããã«å¹æçãªã³ãŒãã®ã³ã©ãã¬ãŒã·ã§ã³ãå¯èœã«ãªããŸãããããã«ãããGit ãžã®ç§»è¡ã¯å®¹æã«ãªãã忣åããŒã ã®ããã©ãŒãã³ã¹ããã«ã¹ããŒãã«ä¿ã€ããšãã§ããŸãã
ãã©ã³ãã® diff ãæ¯æ¥äœ¿çš
Stash ãåªããŠãããšæãç¹ãšãæ¹è¯ãæãç¹ãäŒããŠãã ãããŠãŒã¶ãŒã®çããã®ãæèŠã«ãç§ãã¡ã¯åžžã«è³ãåŸããŠããŸããStash 3 ã§ã¯ãæããªã¯ãšã¹ãã®å€ãã£ãããã©ã³ãæ¯èŒã远å ããŸããããã©ã³ãéã«ããããã¡ã€ã«ãã³ãããã® diff å®è¡ã¯ãåžžã« Stash ã§ã®ãã«ãªã¯ãšã¹ãã®äžå¿ç圹å²ã§ãããããŠãŒã¶ãŒã®çãã (ãšãåŒç€Ÿã®éçºè ã!) ãããäœæ¥å®è¡äžã®æç¹ã§ãèªåã®äœæ¥ããã¹ã¿ãŒãšæ¯èŒããããšããèŠæããããŸããã
ãã€ã§ããã©ã³ãã® diff ãå®è¡ã§ããããã«ããããšã§ãéçºè ã®æ¥åžžã¯ãŒã¯ãããŒã®é害ããŸãã²ãšã€åãé€ããŸãããéçºè ã¯ããã©ã³ãããªããŒã¹ãããã©ããæ€èšããéãéžæãããã³ããããäºæ³ãããããã«ãªã¯ãšã¹ãäœæåã«ãã¡ã€ã«ããšã«å€æŽã® diff ãå®è¡ããããšãç°¡åã«ã§ããŸããå®å®çã®ãã©ã³ãã䜿çšããããŒã ã¯ããªãªãŒã¹æã«å€æŽæžã¿ç®æãç·åçã«èŠãããšãã§ããåºè·åãããªãªãŒã¹ããŒãäœæã«åããŠæ©ãæºåãè¡ãããšãã§ããŸãã
衚瀺å 容ãå¢ãããã¹ã¯ããŒã«ãæžãã
éçºè ã巚倧ã¢ãã¿ãŒ (å¯èœã§ããã° 2 å°) ã奜ãã®ã«ã¯çç±ããããŸãã1 ã€ã®ç»é¢ã«ããå€ãã®ã³ãŒãã衚瀺ããæ¹ããäœæ¥ã楜ã«ãªãããã§ãããããçç±ã§ãããã²ãŒã·ã§ã³ãªã³ã¯ãšãªããžããªã¢ã¯ã·ã§ã³ãå·ŠåŽã®ééå¯èœããŒã«ç§»åããŸãããé衚瀺ã®ç¶æ ã®ãšãããããŒã«ã¯ã¢ã€ã³ã³ã衚瀺ãããã®ã§ãéçºè ã¯ã³ããã衚瀺ãããã©ã³ã管çããã«ãªã¯ãšã¹ãäœæãžç°¡åã«ãžã£ã³ãã§ããŸããåç»é¢ã«è¡šç€ºãããå 容éã«åãããŠãããŒããŒãã·ã§ãŒãã«ãã ( â[â ) ã䜿ã£ãŠããã°ããããŒãééã§ããŸãã
æ°ããããã²ãŒã·ã§ã³ã«ãããã³ãŒã衚瀺é åãå¢ããã ãã§ãªããããŒãžæäžéšãŸã§ã®è¡šç€ºãç¶æã§ããŸãããã¡ã€ã«ã®å¥¥æ·±ããŸã§ã¹ã¯ããŒã«ããŠãããšããŠãããã«ãªã¯ãšã¹ãã®äœæãã³ãããé²èЧãªã©ã®äžè¬çãªã¢ã¯ã·ã§ã³ãããã«å®è¡ã§ããŸãã
æ°ããããã²ãŒã·ã§ã³ããŒã¯ãã¢ãã©ã·ã¢ã³ã® Git ãªããžã㪠ãã¹ãã£ã³ã°ãµãŒãã¹ãBitbucket ã§ã䜿ããããã«ãªããŸãããè·å Žã§ Stashãå人ãããžã§ã¯ãçšã« Bitbucket ã䜿çšããŠããå Žåã§ããBitbucket ã䜿ã£ãŠã¯ã©ãŠãã§ Git ã®æ€èšãéå§ãããã®åŸãStash ã䜿ã£ãŠå åºãªå°ç€ ã«ç§»è¡ããå Žåã§ããã©ã¡ãã®å Žåããã®ç°¡åãªããã²ãŒã·ã§ã³ãå©çšã§ããŸãã(2 ã€ã®éçºããŒã ãååããŠãã®ããã²ãŒã·ã§ã³ãå®çŸããçµç·¯ã«é¢ããŠã¯ãä»åŸã®ããã°ãã芧ãã ãã!)
ããã«ãJava 8 ãžã®å¯Ÿå¿ã倧ããªãããã®äžãç§»åããããŒããŒãã·ã§ãŒãã«ãããªã©ãè€æ°ã®æ©èœã远å ããŸãããå šè©³çŽ°ã¯ããªãªãŒã¹ããŒãã§ã芧ããã ããŸãã
Git ã®äœ¿çšãæ€èšäžã®ã°ããŒãã«ããŒã ã®çããã«ããdiff 奜ãã®ããã©ã³ Git 䜿ãã®çããã«ããStash 3 ã¯åœ¹ç«ã¡ãŸããæ©éãé©åãªã€ã³ã¹ããŒã©ãŒãããŠã³ããŒããããGitããæŽ»çšããŠãã ãã!
æ¬çš¿ã¯ãAtlassian Blogs æ¥æ¬èªçã®è»¢èŒã§ããæ¬æäžã®æ¥æãªã©ã¯Atlassian Blogs è±èªçã§ã®æçš¿åœæã®ãã®ã§ãã®ã§ãäºæ¿ãã ããã