2

著者が指示した記事を読んでいます:既存のリポジトリ内に新しいリポジトリを作成し、それが彼が見落としたエラーであるかどうか疑問に思いました。後で確認します。

これらは私がチェックしたい条件です:

  1. 既存のディレクトリがリポジトリになり、メインプロジェクトにすでにチェックインされているファイルが新しい(サブ)リポジトリでもチェックされる状態。これは可能ですか?

  2. gitリポジトリを含むディレクトリツリーが初めてチェックインされたとき

  3. git initによって、または.gitリポジトリを新しいディレクトリまたは空のディレクトリにコピーすることによって、リポジトリの下に新しい空のリポジトリが作成された場合はどうなりますか?

4

2 に答える 2

2

gitリポジトリ内のGitリポジトリ」で説明したように、ネストされたリポジトリは親リポジトリによってほとんど無視されます(gitlinkのみが記録されます)

したがって、親リポジトリでの操作は、ネストされたリポジトリでは発生しません。

ネストされたリポジトリをサブモジュールとして宣言した場合は、親リポジトリネストされたリポジトリをチェックアウトできますが、そのサブモジュールは常に固定コミットを参照します。
サブモジュールに変更を加えた場合は、それらをコミットしてプッシュし、親リポジトリに戻ってコミットしてプッシュする必要がありますサブモジュールの新しい固定コミットを記録するため)。「サブモジュールの本質
」を参照してください。

于 2012-09-24T05:59:17.810 に答える
1

これを実行する場合、ネストされたリポジトリが必要な場合はサブモジュールを使用する必要があります。トップレベルのリポジトリは、すべてのサブリポジトリの最新のコミットを追跡し、それらの内部では、物事はあなたが望むようにすることができます。これがないと、gitは文書化されておらず、サポートされていない方法で動作するため、おそらく試してはいけません。

于 2012-09-24T05:30:04.637 に答える