1

私は複数のプロジェクトに使用する CMS フレームワークを持っており、私がコーディングしました。私がプロジェクトを行うにつれて、CMS が改善され、その後のプロジェクトでそれらの変更を使用したいと思うことがよくあります。ただし、多くの場合、一度に複数のプロジェクトを進めています。

git を読んだ後、各プロジェクトを分岐して CMS の改善をマスターにコミットしてから、他のブランチに再配布できることがわかりましたが、それは間違っているようです。特に、いくつかのプロジェクトが終了したものの、コア CMS が使用されていたときとは大きく異なっているように見える数年間は特にそうです。また、プロジェクトを切り替えるときにブランチを切り替えることも意味します。また、それを使用したすべてのマシンは、そのマシンでレポを作成したときに、すべてのブランチのコピーを取得しますか?

他のオプションはクローンのようです。「コア」CMS を含むメイン リポジトリがあり、各プロジェクトはこれのクローンになり、個別に作業されます。これはより直感的に思えますが、クローンの一部の変更をコアにマージして戻して、コアの変更を他のクローンに配布することはできますか?

EDIT:もっと考えてみると、クローンはレポをマシンにコピーすることを指す用語です(そのうちのいくつかを使用していて、いくつかのプロジェクトの最新バージョンを最新の状態に保ちたいと考えています)。だから多分私は「分岐」するべきですか?それはただのgithubのことですか?

どちらのオプションも正しい方法に思えますか? すべてのアドバイスに感謝

4

2 に答える 2

0

私は実際に同様の問題に直面しました。だから私がしたことは、2つのリポジトリを作成することです。すべてのインスタンスが機能するために必要なアプリケーションのコアを備えたもの。

その上に、各インスタンスの特定のファイルと構成のリポジトリがあります。

コア リポジトリにはバージョン番号がタグ付けされており、コアのマスターのすべてのタグが動作中のバージョンでした。

これにより、特定のタグをチェックアウトし、個々のデータをインスタンス リポジトリに保持できます。この設定でできないことは、特定のコードをインスタンス リポジトリに保持し、他のインスタンスにマージすることです。インスタンスリポジトリを1つだけ持っていて、そこに各インスタンスを分岐させるか、何かlile composer (www.getcomposer.org) を使用して依存関係を維持する場合に、これを行うことができます。

于 2013-04-11T06:53:24.457 に答える
0

他のオプションはクローンのようです。「コア」CMS を含むメイン リポジトリがあり、各プロジェクトはこれのクローンになり、個別に作業されます。これはより直感的に思えますが、クローンの一部の変更をコアにマージして戻して、コアの変更を他のクローンに配布することはできますか?

これに出くわした他の人にとっては、クローン作成がここに行く方法でした. すべてのサイトをコンピューター上の個別のフォルダーとして保持できるため、ブランチなどをチェックアウトせずに簡単に切り替えることができます。その後、各クローンからの変更を運用サーバーにプッシュしたり、コア リポジトリ (オリジン) に戻したりできます。 )。次に、オリジンから、変更を好きな他のインスタンスにプッシュできます。. .gitignore_ --assume-unchanged_

于 2013-04-17T13:03:58.780 に答える