1

Git 拡張機能で基本的なサブモジュール機能を試しています。「サブ」と呼ばれるリポジトリと「スーパー」と呼ばれるリポジトリがあります。sub は super のサブモジュールです。

Git 拡張機能でスーパー リポジトリを開くと、その履歴を表示して、通常どおりに通常の作業を行うことができます。サブモジュール リポジトリを使用したいと思います。Git 拡張機能でこれを行うにはどうすればよいですか?

Submodules メニューの下に、有望な「Browse submodule」メニューがあり、「sub」のエントリがありました。しかし、サブをクリックすると、Git 拡張機能はスーパー プロジェクト リポジトリのみを更新します。サブモジュール リポジトリには切り替わりません。

基本的に私がやりたいことは、Git 拡張機能にサブモジュール リポジトリを表示させ、そこでコミット、ブランチ、プッシュ/プルなどを実行させることです。どうすればよいですか?

4

3 に答える 3

2

これは Git Extensions メーリング リストで質問しました。これは、msysgit の最新バージョンによって引き起こされた Git 拡張機能の新しいバグであることが判明しました。これは、Git 拡張機能の将来のバージョンで修正される必要があります (修正は、GitHub のメインの Git 拡張機能リポジトリに既にマージされています)。

于 2011-11-08T20:48:07.187 に答える
2

Git 拡張機能 (2.43) の現在のバージョンには、ツールバーにアドレス行があります。したがって、この行を使用して現在のリポジトリを簡単に変更できます。

また、その線の近くに青い記号のボタンがあります。このボタンはまさにあなたが望むことをします。このボタンをクリックして、参照するサブモジュールを選択するだけです。

現在のリポジトリにスーパー リポジトリがある場合は、そのリストにも表示されます。したがって、これはサブモジュールのリポジトリ間で変更できる非常に便利な機能です。

于 2013-04-18T05:38:53.013 に答える
0

git拡張部分についてはよくわかりませんが、これらの変更をコミットする前に、ディレクトリをサブモジュールディレクトリ(独立したリポジトリです!)に変更する必要があります。

ただし、サブモジュールリポジトリは「切り離されたヘッド」状態にあるため、コミットを保持するために最初にブランチを作成する必要があります。つまり、ブランチのヘッドではなく、特定のコミットにあります。そうしないと、次のサブモジュールの更新によって変更が上書きされるだけでなく、それらにマージしたい以前の変更を簡単に見つける方法がありません。

于 2011-11-04T22:45:19.070 に答える