Helix4Gitの期待と現実

2017年6月よりPerforceからHelix4Gitがリリースされ、Perforceがこの製品でどの程度Gitに対応してきたのか期待を持って検証してみました。この検証により目の当たりにした幾つかの現実を記載いたします。

従来型DepotはGitレポジトリのサポート対象外

2017年からP4D(Helix Versioning Engine)にてGraph型Depotがサポートされました。これによりp4dをGitレポジトリとして直接利用することができるようになりました。Helix4GitではこのGraph型Depotに対してGitクライアントからのアクセスを可能とし、Gitレポジトリとして各種アクションをサポートします。

裏を返せば、Gitレポジトリとしての利用はGraph型Depotのみであり、従来型Depotでは利用できないということです。そのため、過去のプロジェクトの資産も全てGitクライアントからアクセスすることはできません。従来からのPerforceユーザである私としては残念でなりません。

P4Vが対応していない

Perforce謹製のクライアントツールであるP4Vが記事投稿時点ではGraph型Depotへの対応ができていません。Graph型Depotでも従来型と同様にWorkspaceでのマッピングは行えますが、クライアント端末へ同期する場合には、今のところp4コマンドを利用するしかありません。どのくらいの人がp4コマンドを用いて開発しているのでしょうか?少なくともクライアントツール必須のメンバーを含む我が社のプロジェクトでは利用できません。

所感

P4Dでは単一レポジトリとしての運用するケースがほとんど(Googleの事例でもお馴染み)であり、且つ単一レポジトリとしても問題ない程の読み書き速度を誇っていたため、今回のGitレポジトリ化の仕様については正直新規ユーザを寄せ集めるためという感じが否めません。どうしてもGitクライアントを利用したいという場合にはgit-p4というコマンドツールが利用できます。私は今後もgit-p4の方を利用して開発を行っていくことになるでしょう。

ところで、今回の検証については自作のDockerイメージ(mmorita44/helix-p4d, mmorita44/helix-git-connector)を利用しております。興味をお持ちの方は是非ご利用ください。