アプリケーションはSencha Architectを使用して開発されます.Sencha ArchitectはさまざまなIDE関連のもの(エクスポートパス、IDEのバージョン管理など)を管理するための補助ファイルのホストを使用します。gitリポジトリでIDEファイルを管理するには?
チームメンバーがSencha Architect IDEでプロジェクトを開くたびにこれらのファイルの一部が変更されます。
特に厄介な変更の例を挙げると、Architectによって生成された*.xds
ファイルには、プロパティexportPath
があると考えられます。私は公開するサーバーを特定のパスに持ち、他のチームメンバーは異なるサーバー/パスの構成を持ちます。
我々のコードベースでは、私は非常に多くのいずれかしたいと思いますが、IDEファイルを持っている:サブモジュール(はい、gitの固有で別のリポジトリで
- 、
- 、私が知っています)または
- は、VCSが変更されていない状態で、ユーザーのマシンに常駐します。ここで注意すべき
重要なのは、煎茶アーキテクトは、ファイルがプロジェクトに対する特定の場所にあることを期待するので、IDEファイルは、通常のソースファイルと同じ場所で利用可能でなければならないこと、です。
また、.gitignoreを使用することはオプションではありません。Sencha Architectは、それらを正しく開く他のチームメンバーにとって重要な情報を書き込むためです。例えば。プロジェクトを開くとき、Sencha Architectはプロジェクトを新しいバージョン(プロジェクトをまったく開こうと思っていれば非オプションである)にアップグレードすることを決めることができ、更新の過程で、IDEは、コードファイル。他のチームメンバーは、プロジェクトを正しく開くために、バージョンのアップグレードを認識している必要があります。
This SO questionは、Senchaが使用する畳み込み形式の背景を示しています。私はSencha Architectのアーキテクチャーを評価する際に否定的な言い訳をしていますが、(メタデータとコード生成を使用して)良いアイデアを出しているようです(gitを含むすべての良いunixツールの使用を無効にしています)。
ここではどのようなアプローチが望ましいでしょうか?なぜ?
ファイルの重要度によって異なります。たとえば、C#とReSharperの場合、.DotSettingsファイルはVCSに入れられ、.user.DotSettingsファイルはVCSに入れられません。ファイルが見つからない場合は、プロジェクトを構築することができますか?それは正しく構築されますか? – Athari
@Athari:ご意見ありがとうございます。私はこの問題に関連する詳細情報を更新しました – Steen
プロジェクトレベルとユーザーレベルのオプションが1つのファイルに混在している場合、単純な解決策はありません。ファイルのいくつかの部分だけをコミットすることはできませんし、AFAIKは無視しておいてください。オプションを別々のファイルに分けるためにSenchaに機能要求を提出したいと思います。一方、大幅な変更があった場合にのみIDEファイルをコミットし、マージオプションを扱うことは、他の開発者に同意することができます。 – Athari