バージョン管理/開発ローカルコピーの維持、ライブコピーとデータベースの作業

これは共通の議論の対象ですが、私が研究しているすべてを通して、私は実際にこれに対する健全な答えを見つけていません。

私は自分のウェブサイトをオフラインで開発し、私のホスティングアカウントを通してライブを開始します。

私はcodeigniterを利用しています。それに基づいて、私のオフラインとオンラインのコピー、つまりベースURLとデータベース構成にはいくつかの基本的な違いがあります。私は単にオフラインで自分のウェブサイトを開発してテストしてからアップロードすることはできません。

もう一つの要因は、私がオフラインで開発しているときに、いくつかの機能を作成しながらデータベーステーブルまたはカラムを追加するということです。私のローカル開発を私のホストにアップロードすると、新しいデータベース構造をアップロードするのを忘れてしまい、しばしば動かないことがあります。明らかにこれは起こり得ません。ライブウェブサイトが壊れたり壊れたりする機会はありません。

さらに、私は開発のログを取ることができるようにしたいと思います。例えば、機能を開発して何か他のものが動作しなくなると、少なくともコード変更を見ることができるようになります。変更を引き起こした。

私の4番目の要件は次のとおりです。開発ラップトップなしで1週間休暇をとり、バグレポートを受け取った場合、私はそれを修正する方法がありません。私がライブコピーでそれを修正すると、それは危険ですが、私のローカルコピーでそれを更新することは避けられません。ライブコピーを次回更新すると、その変更は失われます。どのコンピュータでも、自分の開発セットアップにアクセスし、編集してテストし、ライブサイトに立ち上げ、ラップトップのローカルコピーが最新であるようにコミットする方法がありますか?

だから一般的に私の開発プロセスをより効率的/適切にするための解決策を探しています。何か案は?

ありがとう

0

2 答え

  1. 単純にコピーして配備しないでください。各環境の特定のファイルのコピー、いくつかの値の置き換えなどを自動化するスクリプト(私はApache Antを使用します)を使用してデプロイします。

  2. これはちょうど厳密さを必要とします。開発中にToDoリストを作成し、サーバー上のすべての変更が完了したことを確認します。また、プロダクションサーバと同様のコンフィグレーションを持つプロダクションサーバ上でデプロイメントプロシージャをテストし、すべてがOKであることを確認してから、同じテスト済みのプロシージャをプロダクションサーバに適用することもできます。

  3. バージョン管理システムを使用するだけです。 SVNまたはGitは2つの無料候補です。

  4. どこからでもバージョン管理サーバーを利用できるようにします。オープンソースのプロジェクトなら、無料のホスティングソリューションが存在します。もちろん、開発用コンピュータを利用できない場合は、プロジェクト全体をチェックアウトし、おそらく開発、テスト、デプロイできるようにいくつかのツールをインストールする必要があります。できるだけ簡単にしようとするか、ラップトップを常に使用可能にしてください。あなたが仕事をする予定の場合は、あなたのツールボックスを持ってください。働く予定がない場合は、働かないでください。開発が終わったら、サーバーにコミットしてください。ラップトップに戻ったら、作業コピーをサーバーから更新してください。

0
追加された

JBへの小さな追加と解説

  1. ブランチで( good の方法で)動作するVCSを使用します。ローカルシステムとプロダクトシステムは、別々のブランチの良い候補です。特定の設定。それはあなたの毎日のワークフロー( "テスト"のコード、 "prod"でマージ、ツールでデプロイする、手ではない/ マージ後のみなど)を変更する必要があります。価格

  2. ワークフローの変更。 JBが指摘したように、手で配布しないでください。間違ったブランチを配布しないでください。マージを完了する前に "prod"を配布しないでください。しかし、今ビルドツールはかなりスマートなので、ビルダー内のそのような前提条件を確認できます。

  3. VCSを使用してください。おそらくDVCSがいくらか改善されます。最初のVCSとしてGitの強力な「いいえ」と言っていますが、SVN(劣悪なブランチ| DVCSとのマージ)、Bazaar(私の夢のツールではありませんが、誰が知っていますか)、Mercurial 、化石SCM、モノトーン

  4. 実際にはSCMの外部では何もしない しないでください。 変更の原因の1つは、幸せな開発者のルールです。また、フリータイムではまったく働かないでください。コードベースは常に無料です(無料コードホスティング/ GoogleCode、SourceForge、BitBucket、Github、Assembla、LaunchPad /独自のサーバー)。 、deploy

0
追加された