機械制御/振動騒音
IR情報 会社情報

PERFORCEテクニカルノート008

image_toyo_ss_img_perforce_title_perforce.gif.gif
テクニカルノート008  
image_toyo_ss_img_all_line_yellow.gif.gif

削除したファイルを復元する方法


ディポ内から削除されたファイルを復元するには、そのファイルの削除する前のリビジョンを同期し、 それを追加し、サブミットします。例えば、もし foo.c がリビジョン26で削除されたとき、その foo.c を復元するには次のように実行します。:
image_toyo_common_spacer.gif.gif
p4 sync foo.c#25
p4 add foo.c
p4 submit

image_toyo_common_spacer.gif.gif
また、チェンジリスト300をサブミットした際に、誤って //depot/main/src 配下のすべてのファイルを削除してしまった場合には、次のように実行して復元します。:
image_toyo_common_spacer.gif.gif
p4 sync //depot/main/src...@299
p4 add //depot/main/src/...
p4 submit

image_toyo_common_spacer.gif.gif
image_toyo_ss_img_all_line_dot_526.gif.gif
98.2以前のリリースにおいて
image_toyo_common_spacer.gif.gif
もし、お使いのPERFORCEが98.2以前のリリースである場合、削除されたファイルを復元するにはさらに数ステップの手順が必要となります。まず、 削除されていないリビジョンを同期し、それからそのファイルを消さないように最新リビジョンを同期します。削除されたファイルを消さないように同期するに は、事前にそのファイルを別名で保存しておくか、後述のように p4 flush を実行します。その後に p4 add を使って、ファイルを再追加することができます。
image_toyo_common_spacer.gif.gif
例えば、チェンジリスト300をサブミットした際に、誤って //depot/main/src配下のすべてのファイルを削除してしまったとします。もちろん、ディポ内にはまだ削除される前のリビジョンが存在していますが、最新リビジョンには削除マークが付けられてしまいました。これらのファイルを削除から復元するには、次のように実行します。:
  1. 削除されていないリビジョンを同期します。このケースでは、チェンジリスト300より以前であればファイルは削除されていませんので、@299に同期すればよいことになります。
    image_toyo_common_spacer.gif.gif
    p4 sync //depot/main/src/...@299

    image_toyo_common_spacer.gif.gif
  2. クライアント・ワークスペース内で削除されたファイルを消さないようにするため、 p4 flush を使って最新リビジョンを同期します。
    image_toyo_common_spacer.gif.gif
    p4 flush //depot/main/src/...

    image_toyo_common_spacer.gif.gif
  3. 復元するためのファイルを追加目的で作業状態にするため、該当するすべてのファイルに対して p4 add を実行します。
    image_toyo_common_spacer.gif.gif
    • UNIXでは、そのファイルが存在するところのトップ・ディレクトリに cd し、 find コマンドですべてのファイルをリストします。:

    image_toyo_common_spacer.gif.gif
    find . -type f -print | p4 -x - add

    image_toyo_common_spacer.gif.gif
    • Windows上で同等の操作を実行するには、そのトップ・ディレクトリをエクスプローラで選択し、 P4Win の作業中チェンジリスト・パネルにドラッグします。もしくは、次のMS-DOS コマンドを実行します。:

    image_toyo_common_spacer.gif.gif
    dir/s/b | p4 -x - add

    image_toyo_common_spacer.gif.gif
    • Machintoshhでは、MPWシェルから files コマンドを実行します:

    image_toyo_common_spacer.gif.gif
    files -f -q -r -s | p4 -x - add

    image_toyo_common_spacer.gif.gif
    これによって、実際に復元されるファイルが追加目的の作業状態になります。 クライアント・ワークスペース内のファイルで、ディポから削除されなかったファイルについては、 p4 add によって拒否されます(無視してもよいエラーとなります)。
    image_toyo_common_spacer.gif.gif
  4. ここで、当該チェンジリストをサブミットします。
    image_toyo_common_spacer.gif.gif
    p4 submit

    image_toyo_common_spacer.gif.gif
    チェンジリストのフォームにおいて、間違ってリストされているファイル (すなわち、クライアント・ワークスペース内に存在するジャンク・ファイル)がないかをチェックし、もしあればサブミットのリストから除外します。
    image_toyo_common_spacer.gif.gif
    p4 submit コマンドが正常終了すると、先ほど削除されたファイルがディポ内に復元されます。

image_toyo_common_spacer.gif.gif
 
image_toyo_ss_img_all_btn_yellow_bgwhite2.gif.gif戻る

PAGE TOP