kidoOooOoooOOom

ゲーム開発やってます

Perforceでフォルダ名を一括で変更するコマンド

最近バージョン管理ツールとしてPerforceを使ってるので、それのメモ。

チームでは基本的にはGUIツールのp4vで操作しているのだけども、p4vからだとファイルやフォルダ名のリネームは1つずつしかできない。
最近、命名規則の変更などで大量のファイル・フォルダ名を変更したくて困ったケースがあった。

例えば、下記のようなbefore/afterにしたい場合

[before]
AAA/BBB/01_CCC/
AAA/BBB/02_CCC/
AAA/BBB/03_CCC/
...

[after]
AAA/BBB/0001_CCC/
AAA/BBB/0002_CCC/
AAA/BBB/0003_CCC/
...


スクリプトとかで下記p4 コマンドを生成して、コンソールから実行すれば一発でいける。

# チェックアウト
p4 edit AAA/BBB/01_CCC/...
p4 edit AAA/BBB/02_CCC/...
p4 edit AAA/BBB/03_CCC/...


# リネーム
p4 move AAA/BBB/01_CCC/... AAA/BBB/0001_CCC/...
p4 move AAA/BBB/02_CCC/... AAA/BBB/0002_CCC/...
p4 move AAA/BBB/03_CCC/... AAA/BBB/0003_CCC/...

# submit
p4 submit -d "rename"