2012-01-05 14 views

答えて

4

ClearCaseでファイルをフォークすることはできません。

コードをリファクタリングしてファイルを2つに分割すると、そのうちの1つが新しいファイルとして表示され、誰がコード化したかについての情報が失われます。注釈コマンドは、行の作者がそれを誰が分割したかを示します。

+0

+1。それは私の答えの私の最初の結論と一致しているようです。 – VonC

+0

@voncすみません。あなたは本当にそれを言う。しかし、私はより直接的かつ簡潔な答えが将来の読者にとってはよりよいだろうが。ここであなたの助けをありがとう。あなたはベストの一つです。 – neves

3

UCMであっても、ファイルの完全な履歴を簡単に複製することはできません。
履歴を分離する最も良い方法は、元のブランチの同じファイルに影響を与えることなく、そのファイルに新しいバージョンを作成するためにブランチを作成することです。 SVNで、枝がディレクトリであり、cc2svnのようなツールは、実際には「svn cp」を使用してClearCaseの枝を複製する、という事実から来るかもしれない「のsvn CP」を考える

はClearCaseのに利用可能であるべきです。

しかし、ClearCaseではブランチが一流の市民であるため、ブランチの期間はコピー/フォークの期間よりも理由があります。 cc2svnのメインページから、

のClearCaseとSVNで枝を作成するに差があります:

  • SVNが親ブランチからコピーしたすべてのファイルを対象に同様:svn cp branches/main branches/dev_branch
  • ClearCaseは、チェックアウト操作時にのみファイルの実際の分岐を作成します。
+0

私はファイルをブランチしたくありません。私はそれの2つのコピーが欲しい。私はコードのいくつかを他のファイルにリファクタリングしており、その履歴を失いたくはありません。 – neves

+0

@neves:私のポイントは:(履歴を保持する)svnのコピーは、ClearCase(履歴を保持せず、別のオブジェクトを完全に作成しない)とは非常に異なっています。 ClearCaseで正当な理由を判断する正しい方法は、ブランチにあります。ここで、 '' cp' 'はすべて(ブランチ、タグ、コピー...)を作成する方法です。 – VonC

+0

@neves:1つのファイルをコピーすることはできますが、完全な履歴は取得できません。しかし、ブランチでは、ファイルの名前は変更されず、その完全な履歴の恩恵を受けます。 – VonC

0
親フォルダの

かなり単にあなたが(ないチェックアウト親フォルダ内の)適切な場所に複製したい親フォルダ 移動要素をチェック

を行って

チェックアウトの取り消し

すべてのファイル歴史を持つ元のフォルダに戻ってきて、複製されたものも履歴とともに新しい場所に残ります。各ファイルを個別にチェックアウトして変更することができます

関連する問題