web-dev-qa-db-ja.com

保留中のチェンジリストを持つPERFORCEクライアントを削除する方法

perforceにワークスペースがあり、いくつかのファイルを削除対象としてマークしました。次に、そのワークスペースを強制的に削除します。

しかし、私には管理者権限がありません。どうすればこれを達成できますか?

37
Steve Mark

p4 openedを実行して、開いているすべてのファイルを表示し、p4 revertを実行して元に戻します。

次に、p4 changes -c your-client-name -s pendingを実行して、すべての保留中のチェンジリストを表示します。最初のステップで、開いているファイルをすべて元に戻したため、これらのチェンジリストはすべて空になります。 p4 change -d change-numberを実行して、空の保留中の各チェンジリストを削除します。

その後、p4 client -dを実行してクライアントを削除できます。

49
Bryan Pendleton

メニュー項目の任意のシーケンスを介して、P4Vでわずか11回クリックするだけです。

  1. チェンジリストを右クリックします
  2. 保存されたファイルを削除する
  3. 'はい'
  4. チェンジリストを右クリックします
  5. すべてのジョブを削除
  6. チェンジリストを右クリックします
  7. ファイルを元に戻す
  8. 「元に戻す」
  9. チェンジリストを右クリックします
  10. 保留中のチェンジリストを削除
  11. 'はい'

Perforceをユーザビリティ学校に送りましょう。

45
Colonel Panic

Perforceクライアントを削除するためのスクリプト可能な手順を次に示します。注意して使用:これにより、クライアントで進行中の作業がすべて削除されます!

  1. このクライアントで変更されたすべてのファイルを元に戻します。

    p4 -c $CLIENT revert -k //...
    

    -kオプションの使用に注意してください。このオプションは、「クライアントワークスペース内のファイルを変更せずに、サーバーメタデータでファイルを元に戻すようにマークします」。後でクライアントを削除するので、クライアントワークスペースの更新については気にしません。これにより、多くのファイルを開いている場合に速度が向上します。

  2. クライアントに関連付けられている保留中の変更から、保留されているすべてのファイルを削除します。

    p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 |
    while read CHANGE; do p4 shelve -c $CHANGE -d //...; done
    

    p4 shelveを使用しない場合は、この手順を省略できます。

  3. クライアントに関連付けられている保留中の変更はすべて空になりました。それらを削除します。

    p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d
    
  4. 現在、クライアントに関連付けられている保留中の変更はありません。クライアントを削除します。

    p4 client -d $CLIENT
    

(このプロセスははるかに簡単なはずです!特に、クライアントを削除する前に、クライアントに関連付けられている保留ファイルを削除する必要がある理由はないようです。簡単になりました。)

12
Gareth Rees

これは、編集のために多くのファイルをチェックアウトしたデフォルトの変更セットを空にするために私がしたことです。

 p4 opened | sed 's/#.*$//g' |  xargs -iF p4 revert F

これにより、p4 openedによって生成されたファイル名からコメント部分が切り捨てられ、p4 revertにファイル名がパイプされます。その後、保留中のものは何もなく、p4 changes -c my-client-name -s pendingは何も生成しません。大きな変更セットがある場合、これには時間がかかります。

10
Juve

(チェンジリストと他の問題がある)p4クライアントを削除するために、p4-delete-clientと呼ばれるこのスクリプトを書きました。
次の機能があります。

  • チェンジリストを自動的に削除します(保留を取り消し、棚上げを削除します)
  • ホスト名を修正します(クライアントが作成されたホスト名と異なる場合)
  • ロックされている場合、クライアントのロックを解除します
  • クライアントを削除します
  • 関連ファイルを削除します(引数からではないように構成できます)

スクリプトは repo の他のスクリプトに依存していることに注意してください。

5
Arnon Zilca

それらの手順を試してください:

  1. 1.チェンジリストを右クリック

  2. 「所有権の変更」を選択します

  3. ワークスペースボックスで既存のワークスペースを選択し、[OK]をクリックします

  4. チェンジリストを右クリックして削除を選択し、OKをクリックします。
2
aristotaly

変更リストを削除する前に、すべてのファイルを元に戻す必要があります。

P4vを介した2つのステップ(バージョン2013.4):

  1. すべてのファイルを元に戻します。

    Right click the pending changelist, and then choose "Revert Files"

  2. 変更リストを削除します。

    Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"

2
nybon

これはデフォルトのチェンジリストをリセットするためにP4Vで私のためにちょうど働いた:

  1. デフォルトのチェンジリストを右クリックして、「保留中のチェンジリストの編集「デフォルト」」を選択します

  2. 右下の「番号付きチェンジリストとして保存」ボタンをクリックします

  3. 新しいチェンジリストを右クリックして、「チェンジリストXXXを削除」を選択します

また、新しいチェンジリストを右クリックして、必要なことを行うためにファイルを元に戻すことができます。これは、デフォルトのチェンジリストのオプションとしては利用できません。

0