p4 sync (グラフ)

クライアントワークスペースをレポジトリのビューに同期します。

構文規則

p4 sync [-f -n -q -k] [file[commit-sha1 | reference] ...]

説明

同期してリポジトリの現在の内容が反映されるようにクライアントワークスペースを更新します(リポジトリが変更されている場合)。

クライアントにマップされている1つ以上のリポジトリ内に存在するファイルパスを指定すると、それらのリポジトリが同期されます。以下に例を示します。

  • repo1repo2の両方に「dev」という名前のブランチが存在する場合:
    • p4 sync -f devコマンドを実行すると、両方のリポジトリ内でdevブランチが同期されます。
    • p4 sync -f //repo/repo1/...@devコマンドを実行すると、repo1内のdevブランチが同期されますが、repo2内のdevブランチは同期されません。
  • repo1のみにdevという名前のブランチが存在する場合:

    • p4 sync -f devコマンドを実行すると、repo1内のdevブランチが同期されます。
    • p4 sync -f //repo/repo1/...@devコマンドを実行すると、repo1内のdevブランチが同期されます。
注意
  • デフォルト設定の場合、指定したファイルパス内のファイルのみでなく、クライアントにマップされているリポジトリ全体が同期されます。shaまたはリファレンスを指定すると、そのshaまたはリファレンスに対してクライアントが同期されます。
  • ブランチのリファレンスを指定すると、クライアントが関連付けられているブランチも更新されます。

指定したレポジトリ内でクライアントのファイルが作業状態になっている場合は、同期対象のコミットが現在のコミットの子である場合に限り(早送り更新)、同期処理を実行することができます。

syncコマンドを実行すると、以前に取得されなかったファイルが追加され、以前に取得されリポジトリから削除されているファイルが削除され、リポジトリ内で更新されたファイルが更新されます。

通常、syncコマンドを実行しても、ユーザが手動で書き込み可能に設定したワークスペースファイルが上書きされることはありません。クライアント仕様でclobberオプションを設定すると、この上書き防止機能が無効になります。

注意

リポジトリでファイルをマップする表示仕様を持つクライアントを同期できます。レポジトリでブランチを指定しない場合、 p4 syncの既定値が レポジトリのmasterブランチになります。 クライアントの仕様が、 従来のディポとgraphタイプのディポをマップする場合は、 p4 syncはディポの両方の種類のクライアントワークスペースを更新します。リポジトリのブランチやSHA-1の同期については、 を参照してください。

graphタイプのディポの詳細については、次を参照してください。

オプション

-f

同期を強制実行します。 すでにクライアントワークスペースに特定のリビジョンのファイルがあったとしても、 Helixサーバは同期を実行します。 ファイルが書き込み可能であっても、 そのファイルは上書きされます。

このオプションは作業状態のファイルに影響しませんが、 noclobberクライアントオプションをオーバーライドします(p4 clientを参照してください)。

-k

ファイルを同期することなく、サーバのメタデータが更新されます。これにより、大量のデータを転送することなく、ワークスペース内のファイルの状態をサーバ上で正しく反映することができます。

警告

正しくない方法で更新を行うと、ワークスペースの状態がサーバ上で正しく反映されない場合があります。

-n

プレビューモード:実際に同期を実行せずに、 同期の結果を表示します。

-q

サイレントモード: 通常の出力メッセージを抑止します。 エラーまたは例外的状態に関するメッセージは表示されます。

使用上の注意点

グラフタイプのディポの使用

p4 sync dev

p4 sync refs/heads/master

タイプgraphのディポのレポジトリでは、 devまたはmasterという名のブランチを同期します。いずれの構文スタイルも サポートされています。

p4 sync c2ae39f

タイプc2ae39f4のディポのレポジトリでは、 SHA-1ハッシュキーgraphに関連付けられた Gitのコミットを同期します。

p4 sync refs/tags/v1.8.5-rc3

タイプv1.8.5-rc3のディポのレポジトリでは、graphなど、 レポジトリに関連付けられているタグを同期します。