67

リポジトリを既存のgitリポジトリにgitcloneした場合、問題が発生しますか?

簡単にするために、すべてのプロジェクトで使用できるライブラリ「lib/」を開発しています。これは別のgitリポジトリです。このlib/をすべてのプロジェクトにインポートし、1つの場所でのみ更新し、どのプロジェクトからも触れないで、使用するだけです。

私はこれで大丈夫だと思いますが、気をつけるべきことがあるかどうか疑問に思いました。ありがとう!

4

2 に答える 2

54

念のため、別のリポジトリ内にgitリポジトリのクローンを作成できます。libディレクトリには。が含まれているため
、ディレクトリの下にあるものはすべてlib、囲んでいるGitリポジトリによって無視されます.git

したがって、それは機能しますが、囲んでいるリポジトリにはわかりません。

  • lib別のリポジトリのディレクトリが必要です
  • ネストされたリポジトリツリーのSHA1を記録する場合でも、適切にビルドするには、その特定のリビジョンが必要です。(つまり、親リポジトリのインデックス内の特別なエントリであるgitlink ) これは、囲んでいるリポジトリのクローンを作成することを意味し、空の" "フォルダーを取得します。liblib
    lib/

これら(リポジトリURLとリポジトリSHA1)は、サブモジュールを参照するために親リポジトリ(囲んでいるリポジトリ)によって記録された2つの情報です。リポジトリ内の別のリポジトリの固定リビジョンに アクセスできるように作られていますが、「サブモジュールの本質」で説明されているように、親リポジトリ内で直接ローカルに変更することを妨げるものではありません。 ( 最初に変更をコミットしてから、親リポジトリで1レベル上に戻り、そこでもコミットする限り)
lib
lib

メインプロジェクトの貢献者にとっての主な利点は、プロジェクトのクローンを作成するときにlib、サブモジュールとして宣言されているかどうかもわかることです(「Gitサブモジュールワークフローのアドバイス」で説明)。

于 2012-04-28T10:27:51.690 に答える
13

このチュートリアルに従うことは、以前の経験があまりない場合にサブモジュールを理解するのに役立つことがわかりました。

http://help.github.com/submodules/

https://chrisjean.com/git-submodules-adding-using-removing-and-updating/

于 2012-04-28T22:31:30.840 に答える