1

私はgitにかなり慣れていないので、これに対する答えはノーだと思いますが、ここで経験豊富なgitユーザーの何人かに確認したいと思いました。

サブモジュールの開発ブランチへの参照を含むコミットを持つスーパープロジェクトがあります。その開発ブランチをマスターにリベースして削除すると、参照されているサブモジュールのコミットが消えて、それを参照しているスーパープロジェクトのコミットが使用できなくなるのではないかと少し心配しています。


私はその質問に答えましたが、それは別の質問を引き起こしました。この振る舞いは期待できますか?gitが削除されたアイテムを一定期間refに保持し、その後それらを削除することを読みました。これにより、クローンが最初に機能し、後で失敗する可能性がありますか?

4

1 に答える 1

1

答えが出なかったので、試してみることにしました。サブモジュールを使用してプロジェクトを作成し、サブプロジェクトで3つの異なる構成を使用してスーパープロジェクトに変更をコミットしました。

  1. 参照されたコミットを持つブランチは、変更なしでマスターにリベースされ、ブランチは削除されました。
  2. 参照されたコミットを持つブランチは、参照されたコミットが別のコミットに押しつぶされた状態でマスターにリベースされました。
  3. 参照されたコミットを持つブランチは単に削除されました。

これらすべての場合において、「git clone --recursive」を使用してスーパープロジェクトのクローンを作成すると、参照されたコミットを使用してサブモジュールが正常に追加されました。

于 2010-07-16T02:08:13.027 に答える