リポジトリA
には、フォルダsub
がリポジトリS
のgitサブツリーとして含まれています-master
ブランチを指します。
リポジトリA
をF
にフォークしました。ここで、F
で次のいずれかを実行します。
sub
の別のブランチを使用するようにS
を変更します(つまり、develop
ブランチ)sub
を変更して、別のリポジトリを完全に使用するこれらのいずれかが可能ですか?もしそうなら、どのように?知っておくべき副作用はありますか?
また、変更をマージするときに(プルリクエスト)、リポジトリA
でサブツリーの変更が更新されないようにするにはどうすればよいですか?つまり、コミットを分離する以外に。
git subtree
(git submodule
ではなく)を使用してサブツリーを作成した場合、それは単なる通常のディレクトリです。別のブランチに切り替えるには、それを削除して、新しいブランチからサブツリーを再作成します。これは:
git rm <subtree>
git commit
git subtree add --prefix=<subtree> <repository_url> <branch>
それは問題なく動作するはずです。