git でそれを行う実際の方法はありません。また、単一の作業単位として一度に両方のツリーに影響を与える変更を加えないのであれば、両方に対して単一のリポジトリを使用する正当な理由はありません。私はこの Subversion 機能が恋しいと思っていましたが、リポジトリを作成することによる管理上の精神的オーバーヘッドがほとんどないことがわかりました (単純に、作業コピーの外側の場所を明示的に選択する必要がなく、作業コピーのすぐ隣にリポジトリが格納されているという事実が原因です)。作業コピー) で、小さな単一目的のリポジトリをたくさん作成することに慣れました。
ただし、どうしても必要な場合は (または本当に必要な場合)、ディレクトリとディレクトリだけで git リポジトリを作成しmytheme
、myplugins
WordPress インストール内からそれらをシンボリック リンクすることができます。
MDCore は次のように書いています。
たとえば、mythemeにコミットすると、 mypluginのリビジョン番号が増加します
両方のディレクトリを単一のリポジトリに配置することにした場合、これは git にとって問題ではないことに注意してください。git は、任意の形式のリビジョン番号を単調に増加させるという概念を完全に排除するためです。
git の単一のリポジトリに何をまとめるかの唯一の基準は、それが単一のユニットを構成しているかどうかです。あなたの場合、各ディレクトリの編集を個別に見ることが意味をなさない変更があるかどうか。一度に両方のディレクトリのファイルを編集する必要がある変更があり、編集が一緒に属している場合、それらは 1 つのリポジトリにする必要があります。そうでない場合は、それらを一緒にグロムしないでください。
Git は、エンティティごとに個別のリポジトリを使用することを本当に望んでいます。
サブモジュール
サブモジュールは、両方のディレクトリを 1 つのリポジトリに保持したいという要望には対応しません。実際には、ディレクトリごとに個別のリポジトリを作成し、サブモジュールを使用して別のリポジトリにまとめる必要があるからです。さらに悪いことに、WordPress インストール内のディレクトリは同じディレクトリの直接のサブディレクトリではなく、他の多くのファイルを含む階層の一部でもあるため、ディレクトリごとのリポジトリを統合リポジトリのサブモジュールとして使用しても何のメリットもありません。リポジトリはユースケース/ニーズを反映しません。