私はPHPでアプリケーションを持っています。私は、JavaScript、CSS、フォントなどの多くを使用します。gulp、git、php&productionビルド
すべてがgitでバージョン管理されており、gitでサーバーを更新します。私のサーバーはマスターブランチ上にあり、サーバー上のコードを更新するためにすべてを押します。
コードをアップグレードし、gulpを使って自動的にjavascriptをコンパイルし、sassを使用してフォントを生成したいと思います。
何か問題が生じた場合に備えて、私のサーバーにgulpをインストールしたくない場合、私のウェブサイトは動作不能になります。だから私は、javascript、cssのコンパイルされたファイルでビルドバージョンを作成することができなければなりません...しかし、私たちがバージョンを変更するたびに私のチームで競合を引き起こすので、常にファイルをコミットしたくありません。
すべてのコンパイル済みファイルでビルドバージョンを作成し、gitで競合しないようにするには、どのようなワークフローが最適でしょうか?
はありがとう
通常のビルドでは、まだjsとcssをコンパイルしていますが、コンパイルしたファイルは無視してください(gitignoreファイルでは?)。しかし、あなたの配備では、どのようにファイルを無視するのですか?あるいは、すべてのファイルを別のgitignoreファイルを持つ別のフォルダにコピーしますか? – Etienne
ところで私はGFSではなくTFSを使用しています(残念ながら)。私はいつも "コンパイルされたファイル"を無視します。それらはexesやdllのようにビルドプロセスの成果物に過ぎません。今、私の展開は、非コンパイル、非最適化、最適化されていない、非すべてのファイルをテストサーバーにコピーし、バグなどを追跡することができます。一方で、私のdeploy --releaseは、コンパイル、最適化、縮小、連結、改訂...すべてのファイルを1つのhtmlファイルと1つのcssと1つのjsファイルを生成してQAサーバーに出力します –
ドンあなたが探しているビルドサーバーを持っていません。それはあなたのために非常に多くのステップを自動化することができ、一貫性と信頼性を開発プロセスに追加します。また、アーティファクトのバージョンを維持することもできます。つまり、コンパイルされたファイルを追跡し、QAまたはプロダクションにどのアーチファクトを配備したかを知っていることを意味します。 –