1

(私はすでに SU でこれを尋ねました。Tumbleweed バッジには感謝していますが、回答を希望します...)

保留中のリバース インテグレーションがあり、インテグレーション用にチェックアウトされたファイルに対して再度実行したいと考えています。ユースケースは、統合ソースに変更を加え、それを統合先に再度伝播したいが、ブランチスペック全体で統合を実行したくない場合です。統合のために開いています。これを自動的に達成する方法はありますか?

アップデート:

p4v や別の GUI ではなく、コマンドライン ツールを使用しています。また、他のファイルも開いている可能性があることを考慮してください。たとえば、ファイルp4 openedのセットは、関心のある変更リストのスーパーセットである可能性があります。

4

2 に答える 2

4

Perforce は、パイプして処理できるものだけを提供する完全なツールを提供しないことで有名です。次のようなことを試してみてください

for file in `p4 opened` do
  p4 integ $file $somedestination/$file
done
于 2009-11-02T18:59:13.673 に答える
3

最近送信された変更を含めるために、既存の統合を元に戻し、それらをやり直したいということですか? もしそうなら、このようなものがうまくいくかもしれません:

p4 opened | sed -e 's:#.*::' > filespecs
xargs < filespecs | p4 revert
xargs < filespecs | p4 integrate -b branch

最初のコマンドは無害ですが、他の 2 つのコマンドは破壊的であるため、p4 コマンドの前に「echo」を追加してテストし、生成されたコマンド p4 コマンドが正しく表示されることを確認してください。例えば:

xargs < filespecs | echo p4 revert
xargs < filespecs | echo p4 integrate -b branch
于 2009-11-02T19:00:30.293 に答える