1

私たちの仕事では、Clearcase UCM を中央リポジトリ (特にラベリング/ベースライン、ビルド、およびコード レビュー用) として使用せざるを得ませんが、チームは実際の SCM システムとして Git を使用したいと考えています。

私たちが実現したいのは、基本的に、コミットが中央の Git リポジトリにプッシュされたときにコミットを取得し、開発チームに関する限り読み取り専用の Clearcase VOB にプッシュするスクレイピング サービスです。コメントとユーザー名として (正確な日付/時刻の一致は重要ではありませんが、ユーザーを正しく取得することは重要です)。

私たちの集中管理された Git サーバーは (優れた scm-manager を使用して) Windows ドメイン ユーザーとパスワードを受け入れるように構成されており、Clearcase サーバーは Windows ドメイン アカウントを使用していますが、スクレイパー サービスがどのように正しいユーザーを「偽装」するかはわかりません。 Clearcase で正しく複製されます。
このコマンドには何らかの約束があると思いましたcheventが、それはコメントへのアクセスしか提供しません。

Clearcase イベント レコードがデータベースに登録された後に、その詳細、特にユーザー名を修正する方法はありますか? または、これを行うより良い方法はありますか?
繰り返しになりますが、双方向ブリッジは必要ありません。コードのコミットに関する限り、Clearcase VOB へのすべてのアクセスはスクレイパーを介して行われます。

4

1 に答える 1

1

ClearCase はファイルごとの SCM であり、リビジョンベースの SCM ではありません。
( ClearCase と git のより詳細な比較については、「すべての開発者が知っておくべき ClearCase の基本概念とは? 」を参照してください)

つまり、git コミットごとに、次のことを行う必要があります。

1 つのバージョンだけでなく、"要素" (ファイルまたはディレクトリ) 全体に影響するため、そのようにユーザー ID を記録することはできませcleartool protectん。次のインポートでは、コンテンツがインポートされた新しいコミッターの ID でその ID が上書きされます。
さらに、最初の作成者を変更することはできません (「要素の最初の作成者の名前を変更する」を参照)。

つまり、その情報 (作成者と作成者の git ID) をattributeに記録する必要があります:
を参照してくださいcleartool mkattr


ファイルの新しいバージョンの「作成者」として Git ユーザーを正確に反映したい場合、clearfsimportそのユーザーとして実行する方法が必要になることを意味しますか?

はい: コミットごとに、ClearCase が作成者 (これが新しい要素の場合) またはバージョン作成者 (これが新しい要素の場合) を適切に設定するために、 ( Windows では、このスレッドでclearfsimport説明されているように) 「as」する必要があります。既存のバージョンの更新です)。runas

そもそもその可能性について言及しなかった理由は、別のユーザーの資格情報にアクセスできず、 for each に切り替えることができないためですclearfsimport

その他のインポート ツール (CVS、PCVS、RCS、SCCS、SSafe)は次のとおりです。

  • その作成者/作成者の情報は完全に無視してください。
  • ツール固有の情報用に独自の属性を追加します (プロモーション グループ ' PVCS_GROUP' やRCS_REVISION.

毎回、次のような制限があります。

clearexport_sccs バージョン ツリー構造に関連しないSCCS ファイル内の情報を無視します。これには、フラグ、ID キーワード、ユーザー リスト、変更リクエスト番号が含まれます。


Clearcase の履歴を必要とする他のシステムのほとんどは、変更者を反映するために作成者を使用します。

これは、他のシステムがユーザー ID バージョンに依存できることを意味します。ただし、それがインポートに使用されたものである場合を除きます(その場合、インポートからのデータを記録する特別な属性を調べます)。

于 2013-07-26T05:29:06.183 に答える