6

先日、誤ってSvnリポジトリを削除した後、別のことを試してみたかったので、現在のバージョン管理ツールのテストグラウンドとしてPerforceを選択しました。それは順調に進んでおり、PERFORCEで見られるものが気に入っています。

これが私の問題です。ファイルをPERFORCEサーバーに送信し、クライアントPCを使用してマスターPERFORCEサーバーからそれらのプロジェクトを取得しました。PERFORCEで複数の「デポ」を使用できることに気付いた以外は、すべてうまく機能しています。組織化のために、そしておそらくはそれらのプロジェクトの一部を別のデポに移動するだけでよいのは理にかなっています。セキュリティ上の理由から旅館の場合。

私はいくつかの答えを探していました、そして私はそれらのいくつかを見つけました、しかし私は意図した結果を生み出すことができないので、私はここでいくつかの専門家のアドバイスを探しています。

私が試したページの1つはこれです

http://kb.perforce.com/article/24/renaming-depot-directories

解決策を提供しているようですが、同じサーバープロセス上にある1つのデポから別のデポにファイルを移動できませんでした。このページの例は、あるフォルダーを同じデポ内のフォルダーに移動する場合に正常に機能します。この例は、同じデポの下にある別のフォルダーに移動することを示しているようです。

そのため、マスターのPERFORCEデポフォルダーを同じサーバー上にある別のデポに移動するための合理的で安全な方法を探しています。当然、作業を失うことはありません。

これが私が欲しいものです

- 現在

//Depot-A
 -->folder1
 -->folder2

- が欲しいです

//Depot-A
 -->folder1

//Depot-B
 -->folder2

ありがとう

4

3 に答える 3

5

異なるデポ間でのファイルの移動は、ターゲットデポがすでに存在している必要があることを除いて、同じデポ内のフォルダー間でのファイルの移動と同じです。あなたの例を使用し、「Depot-B」がまだ存在しないと仮定して、「folder2」を「Depot-A」から「Depot-B」に移動するには、次のようにします。

p4 depot Depot-B
p4 edit //Depot-A/folder2/...
p4 move //Depot-A/folder2/... //Depot-B/folder2/...
p4 submit
于 2012-11-13T13:44:26.550 に答える
0

これが私がすることです(簡単に言えば):P4Vセッションを開き、送信された変更リストタブを選択すると、このセットをフィルタリングして、移動するセクションに関連する変更のみを表示できます。これは、入力する新しいデポ(またはサーバー)に複製する変更セットです。アイデアは、片側のアーカイブファイルを解きほぐし、宛先で同じ方法でそれらを巻き上げることです。したがって、プロセスは、(1)最初のチェンジリストに同期し、(2)そのセットを新しい場所に統合し、(3)そのセットをチェックインし、(4)次のチェンジリストに進むだけです。明らかに、これはスクリプト化できます。私は現在Pythonでスクリプトを作成中ですが、Perforce関数ライブラリを備えた適切なスクリプト言語であればどれでも機能します。いくつかの合併症:チェンジリストは元のリストと順番に同じになりますが、元の時間はそうではなく、「現在」になります。もちろん、ラベルがある場合、それらを保持したい場合は、新しい場所にラベルをマップする必要があります。

于 2014-11-07T16:05:40.127 に答える
-1

追加のデポがセキュリティの面であまり追加されないと思います。複数のデポシナリオは、主に非常に大規模なインストールで発生します。

追加のデポの主な利点は、サーバーのディスクスペースレイアウトをより細かく制御できることです。たとえば、リポジトリが大きすぎて単一のファイルシステムに収まらず、複数のファイルシステムを使用するためにリポジトリを拡張する必要がある場合です。追加のデポを作成する2番目の理由は、特殊なタイプのデポが必要な場合です。たとえば、PerforceStreams機能を使用するためにStreamsデポを作成する場合です。

あなたが説明するようなシナリオの場合、すべてのファイルをデポAの下に置くことは、当面はおそらく問題ありません。

于 2012-11-12T15:07:43.693 に答える