2008-08-04 12 views
14

私のオフィスには、ソース管理用に使用する集中ソースセーフ2005のインストールがあります。私はオフィスがサーバー上で使用するものを変更することはできません。異なるバージョン管理システムが連携しています

私はラップトップコンピュータで開発していますが、その中央プロバイダが何であるかにかかわらず、(利用可能な場合)中央サーバと同期できる別のローカルソースコントロールリポジトリが必要です。その理由は、私は地元の安定した支店を維持することができます/クライアントのプレゼンテーションのためのビルドは、フライフープをジャンプすることなく、開発を続けながらです。また、コンサルタントとして、私のクライアントは自分のソース管理プロバイダを使用することを要求することがあり、ここでの柔軟性は人生を楽にします。

既存の分散ソース管理クライアントでこれを処理できますか?

答えて

1

まあ... KernelTrapはsomething on thisです。 vss2svnを使ってSource SafeリポジトリをSubversionリポジトリにパイプすることができて、とても素敵なgit-svnを使ってローカルのgitリポジトリを取得できるようです。

私はVSSへのコミットは、この方法を使用するスムーズで自動プロセスではないと思います。

1

コードの現在のバージョンをチェックアウトし、その周りにgitリポジトリを作成することができます。それを更新してローカルのgitリポジトリにコミットするのは簡単です。それを複製する必要があります。

唯一のキャッチは、適切な無視ファイルを混乱させて、お互いに無視する(私はSVNと同様のことをやったことがあります)必要があるということです。私はSourceSafeを仮定していますが、あなたは物事を無視しましょう。また、特定の操作を2回実行する必要があります(ファイルの削除を両方とも指示するなど)。

0

私はVSSを使用している会社(他の会社ではunknow以外の会社では)で働いていますが、私と私のグループのためにSVN(いつか私はGITを試してみます)

他のSCM(VSSより)を使用すると柔軟性が増しますが、SVNからのVSSへのコミットは時間がかかりますので、VSSへのコミットがほとんどないのは、

私のソリューションでした:

VSS - > SVN:私は現在のSVNにVSSのとれ更新ディレクトリ作業からコピーLinuxのスクリプト(またはAntスクリプト、またはXXXスクリプト)を持って、その後、SVNクライアントおよび更新をリフレッシュ/ SVNへのマージ/コミット。これにより、VSSを使用する会社の残りの部分の変更から更新されます。

SVN - > VSS:この方法では、すべての変更ファイルをVSSにチェックアウトする必要があります。次に、逆引きスクリプトを使用して現在の更新SVNディレクトリ(.svnディレクトリを無視)から現在のVSSディレクトリを更新し、更新してコミットします。

しかし、いくつかのケースでこれを行うには時間がかかります。

1

This HanselMinutesのエピソードは、私が聴きたいと思っていたものを正確にカバーしています。どうやらGitはローカルで使用し、必要に応じて外部のSubversion/vssリポジトリに接続することができます。彼らはそれについて14〜15分で話す。

関連する問題