2012-05-13 9 views
0

私は2つのレイヤーを持つ多くのWebベースプロジェクトを持っています。 フロントレイヤとバックエンドレイヤ。 両方のレイヤファイルが混在しています。私はそれを分離することはできません。 すべてのプロジェクトのフロントファイルはプロジェクトごとですが、gitが必要です。 すべてのプロジェクトの基本レイアウトは常に同期する必要があります。GITのマルチレイヤーWebプロジェクト

app/ 
    cntrl/ 
     basefile.php [base] 
    view/ 
     baseview.phtml [base] 
     thisprojectfile.phtml [front] 

enter image description here

  • 私はいくつかの層のgitのトレースが現在のレイヤーに 開発者と変更するために動作しない場合は無視します。
  • もし各層のブランチを使用すると、別のファイルは表示されず、 を使用することができます。

この問題の解決方法を教えてください。

答えて

0

あなたは3つの選択肢があります。

  1. は、1つのリポジトリですべてのコードを保管してください。なぜあなたがそうすることができないのかの理由を定義していません。
  2. 別のリポジトリをリンクするにはsubmodulesを使用してください。
  3. subtree mergingを使用して、別々のリポジトリを同期します。

オプション#2と#3は、より多くの開発者の努力が必要です。別の理由がない限り、すべて同じリポジトリを使用してください。

オプション#1を使用すると、履歴を最小限の労力で個別に表示できます。たとえば、フロントエンドコミットを"FE:foo"とマークし、バックエンドコミットを"BE:バー"と指定してそれらを識別できます。正しいプレフィックスを含めることができる限り、次のコマンドを実行できます。

git log --grep='^FE:' 

フロントエンドコードの変更点を確認するには、次のコマンドを実行します。

関連する問題