共有ファイルを管理してバージョン管理するための最良の方法を探したいと思います。現在はTortoiseHGでmercurialを使用していますが、これは1つのプロジェクトのすべてのファイルをバージョン管理するのに適していますが、メインリポジトリとは別にいくつかのファイルを扱いたいものです。共有ファイルの管理方法
私たちはcodeigniterを使用しています。プロジェクト間で共有したいモデル、ライブラリ、およびビューファイルがあり、これらのファイルは他のリポジトリの現在のプロジェクトとは別にバージョン管理されています何が最高になるかは分かりません)。
言い換えれば、私たちはプロジェクトAとプロジェクトBを持っています(2つ以上のプロジェクトがありますが、これは例です)。プロジェクトBの所有者からの一般的な機能(より良いログインシステム)である機能要求を取得すると、必要な変更を準備します。この変更を他のすべてのプロジェクトにアップロードします。ここでは、作業中の現在のプロジェクトでこれらの変更を作成します。これらのファイルは単独では動作しないため、他のビューやコントローラファイルをロードしてテストする必要があるため、これらの共有ファイルに対する独自のリポジトリを持つ他の3番目のプロジェクトを作成すると開発が難しくなります。
構造:
root/
application/
model/
auth.php
other1.php
other2.php
library/
mail.php
other1.php
だから我々はauth.phpとmail.phpバージョン別に、other.php-Sよりも、私たちのプロジェクトのいずれかから他の場所にアップロードして、確認したい任意のアップデートがあります共有ファイルのこれらの分離されたリポジトリにあり、そこにある場合は、これらのファイルを自分のプロジェクトに更新します。
これまでに試したこと:私は水銀でサブリポジトリを作成しましたが、分かりましたが、私たちが私たちの共有ファイルを分離したフォルダに保持すると動作します。
root/
.hg/
...
application/
model/
auth.php
other1.php
other2.php
library/
mail.php
other1.php
subrepo-files/
application/
model/
auth.php
library/
mail.php
それはより治療がより困難であるので、私は、あなたは私が言っているものを理解してほしい:subrepositoryで
は、我々はこれらの構造を得ました。ここでは、これらの共有ファイルを更新したときに、これらの共有ファイルを他のすべてのプロジェクトに手動でコピーします。はい、これはひどいです!共有ファイルの更新されたバージョンを他のプロジェクトにコピーすることを忘れてしまい、共有ファイルの他のプロジェクトで他の変更を作成して他のプロジェクトにコピーした場合、以前の更新が失われますしかし、遅すぎることに気がついたので、手動でデバッグする必要があります)。
私はこれのための最善の方法を見つけるために日のcupelを費やしましたが、私は私たちが欲しいものを正確に見つけませんでした。
この場合、/ ciファイル/フォルダ構造を並べ替える必要があります。これは私たちができることではありません。残念ながら:( – Twois