サイトコードをgitに保ち、コアとコントリビュートを同じリポジトリにプルするための最良の方法は何ですか?


11

drupalがCVSにあったとき、私は自分のサイトをgitリポジトリに置き、CVSを介してコアとコントリビュートを取得しました。2つのシステムはうまく共存し、すべての変更を追跡して、モジュールを貢献するためのパッチを作成することができました。現在gitでは、contribとcoreをダウンロードして自分のサイトのgitリポジトリにチェックインするか、サブモジュールを使用するか不明です。

これに関するベストプラクティスはまだあるのでしょうか。私のリポジトリがdrupalsルートディレクトリを独自のルートとして使用している場合、コアをサブモジュールとして使用する方法に特に困惑しています。

回答:


6

/drupal/260/deploying-drupal-with-gitとまったく同じ質問ではありませんが、私はあなたに同じ答えを持っています。

http://freso.dk/en/2011/02/26/managing_fresodk_from_cvs_in_svn_to_git

Drupal Coreを実際のチェックアウトとして使用すると、たとえばハッキングの追跡が容易になるので便利だと思います。なぜなら、それが.htaccessに変更されたり、直接影響するバグにいくつかのパッチを適用したりするだけで、他に方法がない場合があるからです。


私はそのアプローチが好きです。私がまだ確信がない唯一のことは、リポジトリをリモートにプッシュする方法ですか?基本チェックアウトがdrupal.orgからのものかどうかを意味しますか?
naxoc

リモコンはいくつでも持つことができます。簡単にするために、drupalリモートの名前をdrupalに変更し(gitブランチのorigin origin drupalに名前を変更)、独自のオリジンを追加します(git remote add origin user@example.org:repo.git)。コアブランチ(7.x)を構成して、デフォルトでdrupalからプルすることもできます(gitブランチ--set-upstream drupal / 7.x 7.x)
Berdir

パーフェクト。それがまさに私が探していたものです!
naxoc

ほんの少しの修正git branch rename origin drupal-それはする必要がありますgit remote rename origin drupal
naxoc 2011年

3

コアをハッキングするべきではないので、考え方を逆にします。コアをサイトのサブモジュールにする代わりに、カスタムコードをコアのサブモジュールにします。コアリポジトリのクローンを作成したら、それに独自のサブモジュールを追加するなど、やりたいことをすべて実行できます。

または、サイトのコアgitリポジトリを使用しないことを検討し、drushなどの他の機能を使用して最新リリースに更新します。この方法では、contribモジュールをサブモジュール化するだけで済みます。コアに貢献したり、まだリリースに至っていないバグ修正に依存する最先端のことを行ったりしていない限り、VCS経由ですべてのコミットを取得するユーティリティは最小限です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.