ããã¯ãå©ç¨ãã ================ ããã¯ã¨ã¯ï¼ ------------ Bazaarã®ãµãã¾ããã«ã¹ã¿ãã¤ãºãã1ã¤ã®æ¹æ³ã¯ *ããã¯(hook)* ã§ãã ããã¯ã«ãã£ã¦ç¹å®ã®Bazaarã®ç¹å®ã®ãªãã¬ã¼ã·ã§ã³ã®åå¾ã§ã¢ã¯ã·ã§ã³ãå®è¡ã§ãã¾ãã ãªãã¬ã¼ã·ã§ã³ã¯ ``commit`` ã ``push`` ã ``pull`` ã㨠``uncommit`` ãå«ã¿ã¾ãã ããã¯ã¨ãã©ã¡ã¼ã¿ã®å®å ¨ãªãªã¹ãã«é¢ãã¦ã¯ãã¦ã¼ã¶ã¼ãªãã¡ã¬ã³ã¹ã® `ãã㯠<../user-reference/bzr_man.html#hooks>`_ ãåç §ãã¦ãã ããã 大æµã®ããã¯ã¯ã¯ã©ã¤ã¢ã³ãã§å®è¡ããã¾ããããµã¼ãã¼ã§å®è¡ããããã®ããããã«ããã¾ãã (ãµã¼ãã¼ãµã¤ãã®ãªãã¬ã¼ã·ã§ã³ã®ç¹æ®ãªã±ã¼ã¹ãæ±ããã®ã¯ `bzr-push-and-update`_ ãã©ã°ã¤ã³ãåç §ã) .. _bzr-push-and-update: https://launchpad.net/bzr-push-and-update/ ããã¯ã使ç¨ãã ----------------- ããã¯ã使ç¨ããã«ã¯ã `ãã©ã°ã¤ã³ãæ¸ãã¾ã <#writing-a-plugin>`_ ã æ°ããã³ãã³ããä½æãã代ããã«ããã®ãã©ã°ã¤ã³ã¯ããã¯ãå®ç¾©ãã¦ã¤ã³ã¹ãã¼ã«ãã¾ããä¾ã§ã:: from bzrlib import branch def post_push_hook(push_result): print "The new revno is %d" % push_result.new_revno branch.Branch.hooks.install_named_hook('post_push', post_push_hook, 'My post_push hook') ãã®ä¾ã使ç¨ããã«ã¯ã ``push_hook.py`` ã¨ããååã®ãã¡ã¤ã«ãä½ã ``plugins`` ãµããã£ã¬ã¯ããªã«è¨ç½®ãã¾ãã (ãã©ã°ã¤ã³ãã¤ã³ã¹ãã¼ã«ãã¦ããªããã°ã ``plugins`` ãã£ã¬ã¯ããªãä½ãå¿ è¦ãããã¾ã)ã 以ä¸ã§ãï¼æ¬¡åã«pushããã¨ã"The new revno is..."ã表示ããã¾ãã ãã¡ãããPythonã®ãã«ãã¯ã¼ãæãã¨ããã«ã§ããã®ã§ãããã¯ã¯ãããããã¯ããã«æãè¾¼ãã§ãã¾ãã ããã§ããã¯ã®ä½¿ãæ¹ãç解ããã®ã§ããããã§ä½ããããã¯ããªããã ãã§ãã ãã©ã°ã¤ã³ã®ã³ã¼ãã¯2ã¤ã®ãã¨ãè¡ãã¾ãã æåã«ããã㯠``push`` ãå®äºããå¾ã«å®è¡ããé¢æ°ãå®ç¾©ãã¾ãã (代ããã«ã¤ã³ã¹ã¿ã³ã¹ã¡ã½ãããããã¯å¼ã³åºãå¯è½ãªãªãã¸ã§ã¯ãã使ç¨ãããã¨ãã§ãã¾ãã) ãã¹ã¦ã®pushããã¯ã¯åç¬ã®å¼æ° ``push_result`` ãã¨ãã¾ãã 2çªç®ã«ããã©ã°ã¤ã³ã¯ããã¯ãã¤ã³ã¹ãã¼ã«ãã¾ãã æåã®å¼æ° ``'post_push'`` ã¯ããã¯ãã¤ã³ã¹ãã¼ã«ããã¦ããå ´æãç¹å®ãã¾ãã 2çªç®ã®å¼æ°ã¯ããã¯èªèº«ã§ãã3çªç®ã®å¼æ°ã¯ ``'My post_push hook'`` ã¨ããååã§ã ããã¯é²è¡ã¡ãã»ã¼ã¸ã¨ã¨ã©ã¼ã¡ãã»ã¼ã¸ã§ä½¿ç¨ããã¾ãã ããã¯ããããã°ãã --------------------- ã¤ã³ã¹ãã¼ã«ãããããã¯ã®ä¸è¦§ã表示ããã«ã¯ã ``hooks`` ã³ãã³ãã使ãã¾ã:: bzr hooks