10

こんにちは私はしばらくの間これを回避するつもりでしたが、私はいくつかのtypo3開発サイトを維持するためにgitを使用したいと思います。私はいくつか掘り下げました、そして主題に関する最も有益な(クロム翻訳されたサイト)情報は明確ではありませんが、私に考えさせました。gitマネージドリポジトリの設定方法と、リポジトリの設定時に無視する必要のあるフォルダ、注意すべき点、ベストプラクティスなどがあるかどうかを知りたいのですが、バージョンごとに決定しました。 、dbダンプは、マイルストーンに対応する個別に実行されます。これは、現時点では、CMSバージョン管理のこの側面に対処する方法がわからないためです。

4

2 に答える 2

19

典型的なものがあります.gitignore

/fileadmin/user_upload/
/fileadmin/_temp_/

/uploads/

/typo3conf/temp_CACHED*
/typo3conf/temp_fieldInfo.php
/typo3conf/localconf_local.php

/typo3/
/t3lib/
/typo3temp/

を使用TYPO3する場合は、 !を使用gitしてリモートに拡張機能をインストールしないでください。Extension Manager

代わりに、ext をローカルにインポートし、ローカルにインストールしてから、ext のファイルをコミットしてプッシュlocalconf.phpし、リモート サーバーに変更します。

localconf.phpインクルードの最後localconf_local.php(無視)

@include('localconf_local.php');

つまり、オーバーライドすることができます。DB の資格情報、またはImageMagickオリジナルを変更せずにカスタム パスlocalconf.php。もちろん、チーム内の各開発者は、独自の値を に書き込みますlocalconf_local.php

で無視される典型的な TYPO3 フォルダーは、.gitignoreインスタンスごとに手動で作成する必要があります。

typo3temp

fileadmin/user_upload

もちろん、TYPO3 ソース ( typo3t3libフォルダ) もダウンロードする必要があります。それらをバージョン管理下に置いておくことはあまり意味がありません。

その他のものはuploads、リモートから手動でダウンロードする必要があるため、それをパックするスクリプトを作成するのが最善であり、すべての開発者が何らかのリンクでダウンロードできるようになります。これらのファイルはコンテンツ要素の作成中に作成されたばかりなので、これを git リポジトリに追加することはできません。そのため、それらを無視しないと、すぐに巨大なマージ競合が発生する危険があります。

于 2012-08-10T16:35:40.410 に答える
10

私は biesiors 非常に良い答えにいくつかの側面を追加したいと思います: 私の経験から、最善の戦略は、最初はバージョン管理下に置くことでfileadmin/あり、他には何もありません。typo3conf/したがって、拡張機能を使用する場合は、TER リポジトリの最新バージョンのみを使用することになります。拡張設定 (タイポスクリプト設定、locallang 値) は、fileadmin/ 内の外部ファイルに配置されます。フォルダ構造の例:

fileadmin/
- css/
- images/
- javascript/
- scripts/
- templates/
- - html/
- - templavoila/
- - typoscript/
- - xml/

タイポスクリプト情報をデータベースに保存しないでください。そこからバージョン管理することはできません。

必要な場所に配置.gitignoreします。と も無視typo3conf/ext/typo3conf/l10n/ます。なんで?独自の拡張機能を作成する (または既存の拡張機能を変更する) 場合は、typo3conf/ext/my_extensionname/別のリポジトリに追加します。このようにして、特に複数のプロジェクトで使用されている場合、拡張機能自体を適切に維持できます。また、変更されていない拡張機能をバージョン管理する必要はまったくありません。

提案に従ってください@include('localconf_local.php');- これは良い習慣です。

このセットアップでは、コーディングの規律に対する要求が高くなりますが、報われるでしょう! 現在、2 人のチームで 12 以上のプロジェクトを成功させています。

于 2012-08-10T17:27:55.407 に答える