Java EE Web サイトのバージョンを追跡するために、UNIX に git リポジトリをインストールしました。
私は現在、git の使用法ではなく、以下で説明するように使用すると思われる方法で問題に遭遇しました。
私は、Web サイトの開発に貢献する 3 人の開発者のチームで働いています。
最初にサーバーに Git をインストールしたとき、実際の作業ファイルを含む webapps ディレクトリのレポを直接作成し、問題が発生しました。
1) 変更をレポにコミットしている間、私たちの 1 人は通常git add .
、コミッターが変更したファイルだけでなく、他の開発者の変更もコミットするリポジトリにコミットします。
この問題に直面したとき、コード全体を格納する異なるディレクトリ内の同じサーバーに、私たち一人一人に個別の非ベア リポジトリを作成する必要があると判断しました。
上の画像に示されているように、webapps によってプッシュされた Web サイトのコンテンツを持つ裸のリポジトリを作成しました。この画像では作業ディレクトリです。
ここでの基本的なワークフローは次のとおりです。
1) 開発者ごとに n 個のベアでないリポジトリを作成します。
2) Web サイト全体の作業ファイルをベア リポジトリから取得する
3)独自のレポに変更を加えた後、ベアレポにプッシュします
4) post-receive フックで構成されている裸のリポジトリは、実際には作業ディレクトリを更新します。
このセットアップは正常に機能していますが、以下に示すように多くの問題に直面しています。
1)別のディレクトリに独自のコンテンツを持つ各開発者は、作業ディレクトリを更新する裸のレポにコードをプッシュする前にコードをテストすることができません.1つのjspファイルの変更であっても、これらの手順のCozは、20のコミットを行うことになります元の作業ディレクトリのみを指すTomcatがあるため、バグなしで適切に機能し始めるまで。
ここが一番厄介な問題になりました。
この戦略により、以前は存在していた競合の問題が解決されましたが、コードのテストに関してさらに大きな問題が生じました。
プロジェクトで GIT を使用することが有益と思われるこのシナリオをどのように改善できますか。
誰でも同じことを改善する方法を提案できますか。