ヒビノログ

個人的なメモを淡々と記録していくブログ。最近はLaravelやスマートフォンの話題など。

svn diff でファイル名のみ抽出する

svn diff でファイル名のみ抽出するコマンドについては、 いろいろ検索してみると、

[shell]svn diff /path/to/trunk /path/to/branch | grep "^--- " | sed 's/^--- //' | sed 's/\t.*$//'[/shell]

のような方法が出てくるんだけど、 これだと、画像などのバイナリファイルが取得できない。

svn diff の出力、テキストファイルの場合は

[shell]--- hogehoge.txt +++ hogehoge.txt[/shell]

というような記述があって、上記のコマンドは上の行を抽出してるけど、 バイナリファイルだとそもそもこのような記述が無く、diffの出力には出てきても grepで抜けてしまう。

なので、こうしてみた。

[shell]svn diff /path/to/trunk /path/to/branch | grep "^Index: " | sed 's/^Index: //'[/shell]

これだとバイナリファイル名も取れる感じ。