2

私はすぐに、アプリケーションの一部を、svnバックアップされたリポジトリを使用するものから、 git1 つを使用するものに変換する予定です。

以前は を使用していましgit-svnたが、チーム全体が に移行されgit、その移行の先頭に立つよう求められました。ほとんどの動きを理解できてうれしいですが、まだ解決していない側面が 1 つあります。

私の構成リポジトリの 1 つのディレクトリは、スタンドアロンの Windows マシン上の外部アプリケーションのスクリプト ディレクトリを追跡するために常に使用されています。そのアプリケーションのスクリプト ディレクトリは、アプリケーション インストール ディレクトリ内にあるためsvn、適切な時点でそのディレクトリのみをチェックアウトしました。

私はその構造を維持できることを望んでいましたが、私の研究では、狭いクローンでgitは同じ相対的な構造を維持する必要があることが示唆されており、私の場合は難しいでしょう.

myrepo:config/scripts明確にするために、の内容をにマップしたいと思いC:\application\scriptsます。

私が見る限り、いくつかのオプションがあります。

1. これらのスクリプト ファイルには別のリポジトリを使用します。

リポジトリを正確に正しい場所に複製できるため、これがおそらく好まれます。

残念ながら、現在、構成データ (これらのスクリプトが何であるか) を構成ディレクトリ以外の場所に保存できる構造はありません。そのため、これには、私たちが望んでいたからsvnへの直接の変換を超えて、リポジトリの再構築が必要になります。git

2. 接合点を使用します。

Ger4ish がunix でシンボリック リンクを使用することを提案しているようgitに、ディレクトリの作業コピーを別のconfig場所に置き、C:\ジャンクション ポイントを使用してディレクトリをアプリケーション ディレクトリのサブディレクトリとして表示することができます。

残念ながら、私はそのマシンへの管理者アクセス権を持っていないため、これは最初に表示されたほど単純ではありません。

その他のオプション?

私が見逃したオプションがあるのだろうか。

Git 1.7.0 のスパース チェックアウトに関する質問への回答をお探しですか? 私はいくつかの方法を得ることができますが、特定の位置にチェックアウトする必要性と組み合わせて構造を同じに保つという要件は、この方法が機能しないことを意味します.

4

1 に答える 1

1

サブモジュールを見たことがありますか?構成スクリプト用に別の git リポジトリを作成し、それをサブモジュールとしてメイン リポジトリに追加できます。これにより、直接チェックアウトを実行できますがapplication/scripts、config ディレクトリはプライマリ リポジトリの下に保持されます。

サブモジュールがプライマリ リポジトリにどのように関連するかにはいくつかのニュアンスがあるため、スクリプト ディレクトリにコミットするすべての人にこのワークフローを理解してもらいたいでしょう。

于 2011-09-07T12:03:15.753 に答える