自動化されたチェンジログ

larch changelog コマンドは、GNU-スタイルの ChangeLog ファイルを パッチログから生成します:

  % cd ~/wd

  % larch get -A lord@emf.net--2003-candice \
              hello-world--candice--0.1 \
              hw-C-latest
  [....]

  % cd ~/wd/hw-C-latest

  % larch changelog
  # do not edit -- automatically generated by arch changelog
  # tag: automatic-ChangeLog-- [...]
  #

  2003-01-30 GMT  Tom (testing) Lord <lord@emf.net>       patch-2

      Summary:
        merge from mainline sources
      Revision:
        hello-world--candice--0.1--patch-2
  
      Patches applied:
      
        * lord@emf.net--2003-example/hello-world--mainline--0.1--patch-3
           added copywrong statements
      
        * lord@emf.net--2003-example/hello-world--mainline--0.1--patch-2
           commented return from main
      
  
      new files:
       {arch}/ [...] /hello-world--mainline--0.1 [...] /patch-2
       {arch}/ [...] /hello-world--mainline--0.1 [...] /patch-3
  
      modified files:
       hw.c main.c
  
      new patches:
       lord@emf.net--2003-example/hello-world--mainline--0.1--patch-2
       lord@emf.net--2003-example/hello-world--mainline--0.1--patch-3
  
  
  2003-01-30 GMT  Tom (testing) Lord <lord@emf.net>       patch-1
  
      Summary:
        Punctuated the output correctly
      Revision:
        hello-world--candice--0.1--patch-1
  
      
      This program should say "hello, world" not "hello world".
      
  
      modified files:
       hw.c
  
  
  2003-01-30 GMT  Tom (testing) Lord <lord@emf.net>       base-0
  
      Summary:
        tag of lord@emf.net--2003-example/hello-world--mainline--0.1--patch-1
      Revision:
        hello-world--candice--0.1--base-0
  
      (automatically generated log message)
      
  
      new patches:
       lord@emf.net--2003-example/hello-world--mainline--0.1--base-0
       lord@emf.net--2003-example/hello-world--mainline--0.1--patch-1
  

生成されたChangeLogtag の行を含んでいることに 注意してください。プロジェクトツリー中の changelog コマンドの出力を 省略したい場合は、暗黙的なタグを使うか、tagにマッチする明示的なタグを 与えることで、commit のようなコマンドは自動的に ChangeLog を最新の状態に保ちます。