この記事では Helic Core Server の管理者として行う最低限の操作についてまとめました。
まずは GUIによる管理ツール「P4Admin」での操作を解説して‥
次にコマンドプロンプトでP4コマンドを使った操作を解説します。
今回もまた一通り p4miscさんにお話を伺って自分なりの理解でまとめてみました(p4micsさん今回もまたありがとうございます‥!)。
そして例によって私の理解が間違ってる箇所もあるかと思いますので、何か気になる点などありましたらぜひツッコミいただけるとありがたいです。
目次はこちら。
ちなみに私のように何もかも初めての方は下記の記事もどうぞ。
・Helix Core (Perforce) の基本構成
・Helix Core(Perforce)の主な要素について
P4Admin を使った操作
P4Admin は Helix Core Server をインストールすると付属されている、GUIで操作できるHelix Core Server の管理ツールです。
サーバー管理者はディポを作成したりユーザーを作成して権限を設定したり、他にもメインストリームを作成したりすることもあるかと思いますが、ストリームは P4Admin ではなくクライアント側で行うのだそうです。
という訳で、ここで説明するのは以下についてのみです。
・最低限のツール画面の説明
・ディポの作り方
・ディポの消し方
まずは P4Admin を起動します(管理者として実行はしないでOK)。
起動時にはサーバーへの接続画面が表示されますが‥
初回起動時には以下のようなメッセージが表示されます。
If you proceed, you will become the sole user with superuser access. You will need to specifically grant other administrators superuser access in order for them to use this tool.
Do you want to proceed?
”先に進むと、あなたはスーパーユーザーのアクセス権を持つ唯一のユーザーになります。他の管理者がこのツールを使用するためには、特にスーパーユーザーアクセスを許可する必要があります。
続行しますか?”
OKを押すと全権限を持つ super が与えられます。
権限の確認
P4Admin が起動したら Permissions タブを開いてみます。
サーバー管理者のユーザー名を選択すると、全てのディポ・ストリームに super の権限が与えられていることが確認できます(画像下部の「Folder/File」の欄で「//...」となっているのは、トップ階層以下が対象であることを指しています)。
ログの確認
何かの操作を行うと Log ウインドウに実行されたP4コマンドが表示されるため、こちらを確認すれば、コマンドプロンプトでの操作の参考になります。
ディポの作成
メニューの「File>New...>Depot...」で新しくディポを作成できます。
ディポの名前を決めます。
通常はタイプを「Local(Classic Depot)」か「Stream(Streams Depot)」 から選ぶことになるようです。ここでは Stream を選択しました。また「Stream Depth」はストリーム管理する際のフォルダ階層を指定します。
OKすると、depot2 が作成されたことが Depots タブで確認できます。
表示されない場合は F5キーで画面をリフレッシュしてみてください(ちなみに Depots タブはメニューの View から表示できます)。
ちなみにディポを作成してもエクスプローラ上にディポ名のフォルダが作成されなくて「あれ?」と思いますが、ストリームを作成してファイルを追加すると生成される模様です。
ディポの削除
Depots タブ内で削除したいディポを右クリック「Delete Depot '~'」で削除できます。
説明は以上になります。
コマンドプロンプトを使った操作
次にコマンドプロンプトでP4コマンドを使った操作について解説します。
ここで説明するのは以下についてのみです。
・コマンドプロンプトの実行
・サーバーやユーザーの確認
・ディポの一覧
・ディポの作成
・ディポの削除
ちなみにコマンドプロンプトで操作する際にも、P4Admin を表示しながら作業すると、ディポの作成や削除をGUIで確認しながら行えるため学習時にオススメです。
コマンドプロンプトの実行
コマンドプロンプトで操作する際、環境変数が通っていればどのパスでもP4コマンドは通るため、うっかり大事なファイルを削除したりが無いよう適当な空フォルダを作ってそこで作業すると良いようです。
という訳でCドライブ直下に「P4Work」という作業用フォルダを作成してみました。
ちなみにフォルダのアドレス欄に「cmd」と打ってEnterで、このフォルダがカレントディレクトリの状態でコマンドプロンプトを起動できます。知りませんでした‥便利!
サーバーやユーザーの確認
まずは下記のP4コマンドでレジストリに記録された環境変数を確認します。
p4 set
エディタに何を使うかやサーバーのパス、ユーザー名などがすでに設定されていることが確認できました。Windowsのシステム環境変数・ユーザー環境変数に設定されている状態でも良いようです。
ディポの一覧
P4コマンドですでにあるディポを一覧してみます(depot が複数形なことに注意)。
p4 depots
3つのディポの情報が返ってきました。P4Admin の表示とも一致してますね!
ディポの作成
次はP4コマンドでディポを作成してみます。
p4 depot ディポ名の指定
Enterで実行すると突然テキストエディタが開いて設定が表示されるので、設定を書き換える必要があれば書き換えます。ここではディポのタイプを stream に変更しました。
問題なければ上書き保存して閉じます。
コマンドプロンプトでも先ほどの設定で保存されたログが出ています。
P4Admin でもアイコンから stream タイプで depot3 が追加されたことが確認できます。
ディポの削除
最後にP4コマンドでディポを削除してみます。
p4 depot -d ディポ名の指定
P4Admin でも depot3 が削除されたことが確認できます。
クライアント側でユーザーを追加できないようにする
実際の開発現場では管理者だけがユーザーを作成して権限を設定するものと思いますが、その設定を行っておかないとクライアント側でユーザーをどんどん追加できてしまうので制限する方法について(これは P4Admin からは設定できなさそうです)。
C#で簡易チェックアウトツールを作成していた際に、間違ったユーザー名を入力してもその場で新規ユーザーを作ってサーバー接続に成功してしまうため、制限をかけたいと思った感じになります。
方法はシンプルで下記P4コマンドを入力するだけ。
p4 configure set dm.user.noautocreate=2
この方法に関する公式のガイドはこちらです。
という訳で、P4Admin とコマンドプロンプトでの最低限の操作については以上になります!
「p4 depot」のオプションとして「-d」「-i」「-o」あたりは踏まえておくと良いとのことです。詳しくは公式ドキュメントをご覧ください。⇒ p4 depot