サーチ…
構文
-
git subtree add -P <prefix> <commit>
-
git subtree add -P <prefix> <repository> <ref>
-
git subtree pull -P <prefix> <repository> <ref>
-
git subtree push -P <prefix> <repository> <ref>
-
git subtree merge -P <prefix> <commit>
-
git subtree split -P <prefix> [OPTIONS] [<commit>]
備考
これは、 submodule
を使用する代わりの方法です
サブツリーの作成、プル、バックポート
サブツリーの作成
プラグインのリポジトリを指すplugin
と呼ばれる新しいリモートを追加します:
git remote add plugin https://path.to/remotes/plugin.git
次に、新しいフォルダプレフィックスplugins/demo
指定するサブツリーを作成します。 plugin
はリモート名で、 master
はサブツリーのリポジトリのmasterブランチを参照します。
git subtree add --prefix=plugins/demo plugin master
サブツリーの更新を引き出す
プラグインで行われた通常のコミットを引き出す:
git subtree pull --prefix=plugins/demo plugin master
バックポートサブツリー更新
スーパープロジェクトでバックポルトするコミットを指定する:
git commit -am "new changes to be backported"
マージのために新しいブランチをチェックアウトし、サブツリーリポジトリを追跡するように設定する:
git checkout -b backport plugin/master
チェリーピックバックポート:
git cherry-pick -x --strategy=subtree master
変更をプラグインソースに戻す:
git push plugin backport:master
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow