ã¯ã¼ã¯ããã¼ ============= Bazaarã¯ãã ã®ãã¼ã« --------------------- Bazaarã¯å¤ãã®ç°ãªãå ±åä½æ¥ã®æ¹æ³ãæ¯æ´ãã¾ãã ãã®ãã¨ã¯ããã¯ã¼ã¯ããã¼ã§å§ãã¦ç¶æ³ãå¤ããã°å¥ã®ã¯ã¼ã¯ããã¼ã\ æ¡ç¨ã§ãããã¨ãæå³ãã¾ãã "å¯ä¸ã®æ£ããæ¹æ³"ã¯åå¨ãã¾ãããä»å¾ãç¾ãããã¨ã¯ãã¾ããã ãã®ã»ã¯ã·ã§ã³ã§ã¯Bazaarã«ãã£ã¦ãµãã¼ãããã人æ°ã®ããããã¤ãã®\ ã¯ã¼ã¯ããã¼ã®æçãªæ¦è¦ãæä¾ãã¾ãã ãããã®ã¯ã¼ã¯ããã¼ã¯Bazaarã®ä½¿ãæ¹ã® *ä¸é¨* ã§ãããã¨ã念é ã«ãé¡ããã¾ãã ããã«è¨è¼ããã¦ããªãã¯ã¼ã¯ããã¼ãå©ç¨ãããã®ã§ããã°ã\ ä¸è¨ã«è¨è¼ããã¦ããã¢ã¤ãã£ã¢ãè¶³å ´ã«ãã¾ãã ã½ã ---- ã½ããã¦ã§ã¢ãéçºãããããã¥ã¡ã³ããç·¨éãããããã¯è¨å®ãã¡ã¤ã«ã\ å¤æ´ããã®ã§ãããç°¡åã«ä½¿ããVCSã¯æå©ãã«ãªãã¾ãã æ稿è ã1人ã§ããããã¸ã§ã¯ããè¤æ°ç®¡çããããã«\ åç¬ã®ã¦ã¼ã¶ã¼ã¯ãã®ã¯ã¼ã¯ããã¼ãå¹ççã«å©ç¨ã§ãã¾ãã .. image:: images/workflows_single.png ã¾ã£ãããã¼ã¸ã§ã³ç®¡çã使ããªãå ´åã¨æ¯ã¹ããã®ã¯ã¼ã¯ããã¼ã®å©ç¹ã¯æ¬¡ã®ã¨ããã§ã: * å¤ããã¼ã¸ã§ã³ã®ããã¯ã¢ãã * åã®ç¶æ ã¸ã®ãã¼ã«ãã㯠* å±¥æ´ã®è¿½è·¡ ãã®ã¯ã¼ã¯ããã¼ã«é©åãªBazaarã®ä¸»è¦ãªæ©è½ã¯ç®¡çä½æ¥ãå°ãªã\ (ãµã¼ãã¼ã®ã»ããã¢ããã¯ä¸è¦)ãã¨ã¨ç°¡åã«å©ç¨ã§ãããã¨ã§ãã ãã¼ããã¼ ----------- æã«2人ã§å¤æ´ãå ±æãã¦å ±åä½æ¥ãããå¿ è¦ãããã¾ãã ããã¯ä¸è¬çã« *ã½ã* ã®ã¯ã¼ã¯ããã¼ (ä¸è¨ãåç §) ãããã¯\ ãã¼ã æåã®ã¯ã¼ã¯ããã¼(ä¸è¨ãåç §)ã¨ãã¦å§ã¾ãã¾ãã ããæç¹ã§ã2人ç®ã®äººãæåã®äººãè¡ã£ãå 容(å±¥æ´ãå«ã)ãå«ã\ ãã©ã³ããä½ãã¾ãã é©åãªã¨ãã«ãã¼ã¸ãã¦å¤æ´å 容ã交æãããã¨ã§ä¸¦è¡ãã¦ä½æ¥ã§ãã¾ãã .. image:: images/workflows_peer.png *ã½ã* ãä¸åãå©ç¹ã¯æ¬¡ã®ã¨ããã§ã: * å¤æ´ã®å ±æãç°¡å * ããããã®ããã¹ããã¡ã¤ã«ã®ããããã®è¡ã¯å¤æ´ãã人ã\ æéã¨çç±ãå«ãç¹å®ã®å¤æ´ã¨çµã³ã¤ãããã¦ãã¾ãã ãã®ã¯ã¼ã¯ããã¼ãæ¡ç¨ããå ´åãBazaarã¯CVSã¨Subversionã«å¯¾ã㦠次ã®ãããªå©ç¹ãããã¾ã: * ãµã¼ãã¼ã®ã»ããã¢ãããä¸è¦ * ã¤ã³ããªã¸ã§ã³ããªãã¼ã¸æ©è½ã«ããè¤æ°åã®ãã¼ã¸ä½æ¥ãè¦çã§ã¯ ãªããªãã¾ãã éä¸å ------- *lock-step* ã¨ãã¦ãç¥ããã¾ãããããã¯CVSã¨Subversionã«ãã£ã¦\ æ¨å¥¨/å¼·å¶ãããã¯ã¼ã¯ããã¼ã¨æ¬è³ªçã«åãã§ãã ãã¹ã¦ã®éçºè ãåããã©ã³ãã«åãçµã¿ã¾ãã ææ°ã®å 容ããã§ãã¯ã¢ã¦ãããããã« ``bzr update`` ãå®è¡ãã\ å¤æ´å 容ãä¸å¿ä½ç½®ã«ã³ãããããããã« ``bzr commit`` ãå®è¡ãã¾ãã .. image:: images/workflows_centralized.png ãã®ã¯ã¼ã¯ããã¼ãå°å ¥ããã®ã§ããã°Subversionã¨CVSãç°¡åãªã®ã§ããé¸æè¢ã§ãã Bazaarã¯ãã®ã¯ã¼ã¯ããã¼ãç´æ¥ãµãã¼ããã¦ãã¦ãCVSã¨Subversionãä¸åãå©ç¹ã\ ããã¤ããã¡ã¾ã: * ãããããã©ã³ãã¨ãã¼ã¸ * ãããããªãã¼ã ã®ãµãã¼ã ãã¼ã«ã«ãªã³ãããã§éä¸å --------------------------- ãã®ã¯ã¼ã¯ããã¼ã¯ãéçºè ã ``commit --local`` ãããã¯ãã§ãã¯ã¢ã¦ããunbind\ ãã¦ä¸é£ã®å¤æ´ãè¡ããã¨ä»¥å¤ã¯ã *éä¸å* ã¢ãã«ã¨åºæ¬çã«åãã§ãã ãããã£ãä¸é£ã®å¤æ´ãå®äºããã¨ããéçºè ã¯ä½æ¥å 容ãå ±ç¨ã®ã¡ã¤ã³ã©ã¤ã³ã«\ ã³ããããã¾ãã .. image:: images/workflows_localcommit.png *éä¸å* ãè¶ããå©ç¹: * æ è¡ã®éã«ãããã«æ¥ç¶ãã¦ããªããªã©ã®ãªãã©ã¤ã³ã§ä½æ¥ã§ãã¾ã * 誰ãã®ä½æ¥ã妨ããè¯ããªãã³ããããããæ©ä¼ãå°ãªããªãã¾ã Subversionã¨CVSã¯ãã®ã¢ãã«ããµãã¼ããã¾ããã ä»ã®åæ£åVCSãã¼ã«ã¯ããããµãã¼ããã¾ãããBazaarãããç´æ¥çã§ã¯ããã¾ããã å ±ç¨ã®ã¡ã¤ã³ã©ã¤ã³ã§åæ£å ----------------------------- ãã®ã¯ã¼ã¯ããã¼ã«ããã¦ãããããã®éçºè ã¯ç¬èªã®ãã©ã³ããæã¡ã\ å ãã¦ã¡ã¤ã³ãã©ã³ãã«ã³ããããã権éãããã¾ãã éçºè ã¯å人ã®ãã©ã³ãã«åãçµã¿ãæºåãã§ããããããã¡ã¤ã³ã©ã¤ã³ã«\ ãã¼ã¸ãã¾ãã .. image:: images/workflows_shared.png *ãã¼ã«ã«ã³ãããã¤ãã®éä¸å* ãè¶ããå©ç¹ã¯æ¬¡ã®ã¨ããã§ã: * ä½æ¥å 容ã®ç·¨æãç°¡åã«ãªã - ããããã®ãã©ã³ãã§åå¥ã®å¤æ´ãéçºã§ãã¾ãã * éçºè ã¯å ±åä½æ¥ã«åãçµãã¨ãã«å¥ã®äººã®å人ãã©ã³ãããã¼ã¸ã§ãã¾ãã Subversionã¨CVSã¯ãã®ã¢ãã«ããµãã¼ããã¾ããã\ ä»ã®åæ£åVCSãã¼ã«ã¯ãµãã¼ããã¾ãã Bazaarã®å¤ãã®æ©è½ã¯ãç°¡åãªå©ç¨ãå ±ç¨ã¬ãã¸ããªãçµ±åããããã¼ã¸æ©è½ã¨\ ãªãããªã¡ã¿ãã¼ã¿(ãã£ã¬ã¯ããªã®ãªãã¼ã ã®è¿½è·¡ãå«ã)ã\ å«ãã¦ãã®ã¯ã¼ã¯ããã¼ã«æå¹ã§ãã 人éã®ã²ã¼ããã¼ãã¼ã§åæ£å ----------------------------- ãã®ã¯ã¼ã¯ããã¼ã«ããã¦ãããããã®éçºè ã¯ç¬èªã®ãã©ã³ããæã¡ã\ ããã«å ãã¦ã¡ã¤ã³ã®ãã©ã³ãã«å¯¾ãã¦ãªã¼ããªã³ãªã¼ã®ã¢ã¯ã»ã¹æ¨©éãæã¡ã¾ãã 1人ã®éçºè (ã²ã¼ããã¼ãã¼)ã¯ã¡ã¤ã³ã®ãã©ã³ãã«ã³ããããã権éãæã¡ã¾ãã 1人ã®éçºè ãå½¼ãã®ä½æ¥ããã¼ã¸ãããå ´åãã²ã¼ããã¼ãã¼ã«\ ãã¼ã¸ãã¦ãããããã«é ¼ã¿ã¾ãã ã²ã¼ããã¼ãã¼ã¯ã³ã¼ãã®ã¬ãã¥ã¼ãè¡ããå¿ é ã®åºæºãæºããã®ã§ããã°\ ä½æ¥å 容ãã¡ã¤ã³ãã©ã³ãã«ãã¼ã¸ãã¾ãã .. image:: images/workflows_gatekeeper.png *å ±ç¨ã®ã¡ã¤ã³ã©ã¤ã³ã«ããåæ£å* ã«å¯¾ããå©ç¹ã¯æ¬¡ã®ã¨ããã§ã: * 常ã«ã³ã¼ãã¯ã¡ã¤ã³ã©ã¤ã³ã«å ¥ãåã«ã¬ãã¥ã¼ããã¾ãã * å¤æ´ãã¡ã¤ã³ã©ã¤ã³ã«çµã¿è¾¼ãã¨ãã«å³æ ¼ãªã³ã³ããã¼ã«ãã§ãã¾ã Bundle Buggyã¨å¼ã°ããBazaarã®ã³ã³ãããªã³ãã¼ã«ã¯ã©ããªå¤æ´ã\ ã¬ãã¥ã¼å¾ ã¡ã«ãªã£ã¦ããã®ãããã®å¤æ´ã®ã¹ãã¼ã¿ã¹ã¨ã¬ãã¥ã¼ã¢ã®\ ã³ã¡ã³ãã追跡ããã®ã«ã¨ã¦ã便å©ã§ãã èªåçãªã²ã¼ããã¼ãã¼ã§åæ£å ------------------------------- ãã®ã¯ã¼ã¯ããã¼ã«ããã¦ãããããã®éçºè ã¯ç¬èªã®ãã©ã³ããæã¤ã®ã«å ãã¦ã\ ã¡ã¤ã³ã¹ããªã¼ã ã«ãªã¼ããªã³ãªã¼ã®ã¢ã¯ã»ã¹æ¨©éãæã¡ã¾ãã ã½ããã¦ã¨ã¢ã®ã²ã¼ããã¼ãã¼ã¯ã¡ã¤ã³ã®ãã©ã³ãã«ã³ããããã権éãæã¡ã¾ãã éçºè ãä½æ¥å 容ããã¼ã¸ãããã¨ããéçºè ã¯å¥ã®äººã«ã¬ãã¥ã¼ãé ¼ã¿ã¾ãã ã¬ãã¥ã¼ã«åæ ¼ãããããã¼ã ã®æ¹éã«ãã£ã¦ããªãªã¸ãã«ã®èè ããã㯠ã¬ãã¥ã¼ã¯ãã²ã¼ããã¼ãã¼ã½ããã¦ã§ã¢ã«ãã¼ã¸ããããã«é ¼ã¿ã ã²ã¼ããã¼ãã¼ã½ããã¦ã§ã¢ã¯ãã¼ã¸ããã³ã³ãã¤ã«ãããã¹ãã¹ã£ã¼ããå®è¡ãã¾ããã³ã¼ãããã¹ããå ´åã®ã¿ãã¡ã¤ã³ã©ã¤ã³ã«ãã¼ã¸ããã¾ãã 注: 代æ¿ã¨ãã¦ãã¬ãã¥ã¼ã®ã¹ããããã¹ããããã¦èè ã¯å¤æ´ãèªååããã\ ã²ã¼ããã¼ãã¼ã«æ稿ã§ãã¾ãã (ããã¯ã³ã¼ãã®ã¬ãã¥ã¼ãå¥ã®ã¹ãããã¨ãã¦ã§ã¯ãªãã¸ã£ã¹ãã¤ã³ã¿ã¤ã ã®\ ã¬ãã¥ã¼ãå¹æçã«æ¨é²ãããã¢ããã°ã©ãã³ã°ã¨ãã£ãç¿æ £ãå©ç¨ãã¦ãã\ ã¨ãã«ã¨ãããé©åã§ãã) .. image:: images/workflows_pqm.png *人éã®ã²ã¼ããã¼ãã¼ã«ããåæ£å* ã«å¯¾ããå©ç¹ã¯æ¬¡ã®ã¨ããã§ã: * ã³ã¼ãã¯ã¡ã¤ã³ã©ã¤ã³ã«å ¥ãåã«å¸¸ã«ãã¹ãããã¾ã (ã¡ã¤ã³ã©ã¤ã³ã®å®å ¨æ§ãé«ã¾ãã¾ã) * ãã¼ã ã®è¦æ¨¡ã®æé·ã«å¯¾å¿ã§ãã¾ã Bazaarã®ã³ã³ãããªã³ãã¼ã«ã§ããPatch Queue Manager (PQM) ã¯èªååã²ã¼ããã¼ãã¼ã®æ©è½ãæä¾ãã¾ãã ã¯ã¼ã¯ããã¼ãå®æ½ãã ----------------------- ä¸è¨ã®ããããã®ã¯ã¼ã¯ããã¼ãå®æ½ããæ¹æ³ã詳ããç¥ãããã®ã§ããã°ã\ ãã®ããã¥ã¢ã«ã®3ç« ãã6ç« ã¾ã§ãåç §ãã¦ãã ãããæåã«ã2ç« ã§ã\ ã¤ã³ã¹ãã¼ã«æ¹æ³ãä¸è¬çãªä½¿ãæ¹ã®æå¼ãã¨è¨å®æ¹æ³ã«é¢ãããã£ããã¹\ ã説æããã¦ãã¾ãã