0

HTML 開発用の小さな php フレームワークがあります。私は基本的に、何らかの HTML マークアップを返す関数を作成することで、HTML を半機能的にしました。例えば:

P('Some, text' . a('Link', '#'), 'my_class);

次のようなものを返します。

<p class="my_class">Some, text<a href="#">Link</a></p>

書くのが短くなるだけでなく、より短いという理由だけでなく、同等のマークアップを入力するよりも関数呼び出しを入力するために必要な文字の奇妙な組み合わせが少ないため、はるかに高速です。

このフレームワークはまだ開発中ですが、さまざまなプロジェクトで使用しています。私の現在のレイアウトはこれです:

~/publkic_html/
   ->core/
   ->project_1/
     ->core/
   ->project_2/
     ->core/
   ->project_3/
     ->core/

ご覧のとおり、フレームワークはコアと呼ばれ、トップ ディレクトリに 1 つのコピーがあり、各プロジェクトには独自のコピーがあります。私が現在行っていることは、バージョン管理の形式ではありませんが、プロジェクトのコアに変更を加えたときに、プロジェクトのコアをトップ ディレクトリのコアにコピーすることです。

たとえば、私が project_1 に取り組んでいて、コアに追加する必要があるものがあることに気付いたので、それを追加したとします。次に、project_1 のコアをトップ コアにコピーします。

cp -rvu ~/public_html/project_1/core/ ~/public_html/

再帰的な更新を行います。何がコピーされているかを見ることができるので、詳細が好きです。

別のプロジェクト、たとえば project_2 で作業する必要がある場合は、反対のことを行い、project_2/core/ を ~/public_html/core のコンテンツで更新します。

ご覧のとおり、これは問題です。煩わしいだけでなく、問題が発生する可能性も非常に高くなります。たとえば、プロジェクトにローカルなコアを変更した後、更新を忘れる可能性があります。これにより、2 つの異なるプロジェクトで同じファイルを更新せずに変更すると、変更が上書きされて失われる可能性が高いなど、多くの問題が発生します。

これをより効率的かつ安全な方法で管理するにはどうすればよいですか? 正気は言うまでもありません!

私はgitを見ていましたが、多くの異なるバージョン管理されたバージョンのコアになってしまうようです。

4

1 に答える 1

1

コードの再利用と共有を許可する任意の SCM を使用できます (実際には必要です) (クローン作成の代わりに) (そして、この機能を持たないVCS は知りません)

  1. 転覆
    • 外観
  2. マーキュリアル
    • Subrepo (ゲストレポ)
  3. ギット
    • サブモジュール (git-subtree)

PS: 最初の VCS としての Git は最悪の選択です

于 2012-11-29T09:42:16.823 に答える