私が取り組んでいるプロジェクトでは、開発を支援するツールを開発することにしました。
git はとても素晴らしいので、おそらくいくつかのファイルを防止する機能があれば(はい、ファイルのみ: これは Magento プロジェクトであり、開発するツールは彼自身のモジュールにあり、アプリケーションの残りの部分) は master にマージされますが、他のブランチで利用できるはずです。
役に立ったら、git-flow を使用することを考えています。したがって、master を作成し、そこからdevelop を作成し、そこからすべてのフィーチャー ブランチを作成します。アイデアは、このモジュールを開発することですが、マスターにマージすることはありません。
私は今、master ブランチでのみこれらのファイル (.gitignore) を無視するようなことを考えていますが、それはうまくいくでしょうか?
編集 1: プロジェクト
の構造 プロジェクトの構造についてさらに情報を提供する必要があると感じています。
+ main_folder/
+ magento/
|---+ app/
| |--+ code/
| | |--+ community/
| | |--+ core/
| | |--+ local/
| | |--+ Namespace1/
| | |--+ Module1/
| | |--+ Module2/
| | |--+ Namespace2/
| | |--+ Module1/
| | |--+ Module2/
| |--+ design/
| | |--+ frontend/
| | |--+ default/
| | |--+ default/
| | |--+ layout/
| | |--+ template/
| + js/
| + lib/
+ ezpublish/
開発ツール モジュールは、メイン プロジェクト (magento 部分のみ) のさまざまな場所に含める必要があります。つまり、app/code/local/Namespace1/ Module3 /、app/design/frontend/layout/ dev.xml、app/design です。/frontend/template/dev/tool.phtmlおよび js/ dev /
編集2:
@VonCの答えを探るサブモジュールオプション、これが私がやったことです:
- ブランチ マスターで:
- git サブモジュールを追加 git@github.com:path/to/submodule.git devtool
- CD開発ツール
- git checkout 123abc #サブモジュールの初期コミット
- CD ..
- git add 開発ツール
- git commit -m "最初のコミットでサブモジュールを追加"
- ブランチ開発中:
- CD開発ツール
- git checkout abc213 #サブモジュールの最後のコミット
- CD ..
- git add 開発ツール
- git commit -m "最後のコミットのサブモジュール"
- ブランチ マスターに戻ります。
- touch .gitattributes
- .gitattributes にこれを入れました:
devtool merge=ours
- git add .gitattributes
- git commit -m ".gitattributes ディレクティブ"
しかし、マスターのサブモジュールには最後のコミットの内容があり、マスターの最初のコミットをチェックアウトし、開発にチェックアウトしても、最初のコミットはまだそこにあります(開発に最後のコミットが必要な場合)。
だから私は明らかに何か間違ったことをしていますが、何ですか?