問題タブ [build-process]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
7386 参照

php - Phingを使用していますか?

Phingを使用して PHP アプリケーションをデプロイする人はいますか? もしそうなら、どのように使用しますか? 現在、プロジェクトの新しいインスタンスをデプロイするたびに実行する手書きの「セットアップ」スクリプトがあります。SVN からチェックアウトして実行するだけです。いくつかの基本的な構成変数を設定し、データベースをインストールまたはリロードし、サイト インスタンスの v-host を生成します。

Phingを使用する必要があるのではないかとよく考えます。私は ant をあまり使用したことがないので、セットアップ スクリプトのようにある場所から別の場所にファイルをコピーするスクリプトを作成する以外に、Phingが何をするべきかについての本当の感覚がありません。Phingをプロセスに統合する理由、または統合したくない理由を理解するのに役立つ、より高度な使用例を教えてください。

0 投票する
8 に答える
7586 参照

visual-studio - 自動夜間ビルドに使用するツールは?

私の会社で取り組んでいるいくつかの Visual Studio ソリューション/プロジェクトがあり、現在、自動ナイトリー ビルドのスキームが必要です。このようなスキームは、SVN から最新バージョンをチェックし、ソリューションを構築し、適切なダウンロード可能なファイル (インストーラー、ドキュメントなどを含む) を作成し、エラーやその他のあらゆる種類の気の利いたものについて開発者に電子メールを送信できる必要があります。 . これにはどのツールまたはツールセットを使用すればよいですか?

私は数年前に FinalBuilder を使用していましたが、とても気に入っていましたが、ナイトリー ビルドや電子メール メッセージなどの機能がサポートされているかどうかはわかりません。

0 投票する
3 に答える
5999 参照

c# - 本番アプリのPDBファイルと「コードの最適化」フラグ

本番リリースのPDBファイルをいつ含める必要がありますか?フラグを使用する必要がOptimize codeありますか?それは例外から取得する情報にどのように影響しますか?

顕著なパフォーマンス上の利点がある場合は、最適化を使用したいと思いますが、そうでない場合は、正確なデバッグ情報が必要です。本番アプリでは通常何が行われますか?

0 投票する
6 に答える
1567 参照

build-process - ビルドプロセスにスペルチェッカーを組み込むための最良の方法

私は、自分が作成するアプリケーションで使用されるすべての文字列(およびその他の定数)を外部化しようとします。これは、おそらくほとんどのスタックオーバーフラワーに次ぐ性質であるためですが、必要なのは、任意のアプリケーションのスペルチェックを自動化する機能です。ユーザーに表示される文字列。これにはいくつかの問題があります。

  • すべての文字列がユーザーに表示されるわけではありません。文字列を槍で突き刺し、その分離を維持することは簡単ではありません(ただし、可能です) 。
  • すべてではないにしても、私が使用した文字列の外部化方法のほとんどは、aspell / ispellなどのスペルチェッカーを通過しない重要なテキストを含みます(例:theStrName = "somestring。"とコメント)
  • 多くのスペルチェッカー(もう一度、aspell / ispell)は、箱から出してすぐに多くの単語を処理しません(通常、技術用語、適切な名詞、またはメタデータなどの「新しい」用語)。

このようなものをビルド手順/テストスイートにどのように組み込みますか?アプリケーション内のすべての文字列が変更されるたびに、誰かが手動でスペルチェックを行うことは不可能です。また、最初にすべての文字列が正しくスペルされる可能性はありません。

0 投票する
8 に答える
586 参照

svn - バージョン 1.1 とバージョン 2.0 で同時に作業するにはどうすればよいですか?

状況: ベータ版が終了し、バージョン 1.0 がいくつかの顧客サイトにリリースされました。チーム A は、段階的なバグ修正と使いやすさの微調整を行うバージョン 1.1 の作業にすでに忙しく、別のチームは、製品のコアが完全に再設計されている可能性がある大規模な変更を伴うバージョン 2.0 に取り組んでいます。現在、1.1 に加えられた変更のほとんどは、ある時点で 2.0 に移行する必要があり、2.0 ブランチで行われたバグ修正の一部は、実際には以前のリリースにスケジュールする必要がある場合があります。問題は、2.0 には基本的な違いがあるため、1.1 からの変更を手動で変換しないとマージできないことです。また、その逆も同様です。

私の質問: この種の状況でマージの競合と作業の重複を最小限に抑えるための最良のリビジョン管理プラクティスは何ですか? チームがリビジョン管理の問題に費やす時間と労力をできるだけ少なくしながら、顧客に定期的なパッチを提供するにはどうすればよいですか?

0 投票する
3 に答える
289 参照

build-process - 自動ビルドで生成されたコードを管理する最良の方法は?

私の自動化された NAnt ビルドには、(SubSonic を使用して) データベースから大量のコードを生成するステップがあり、コードはデータベース内のスキーマ名と一致するフォルダーに分割されます。例えば:

  • /生成コード
    • /dbo
      • SomeTable.cs
      • その他のテーブル.cs
    • /abc
      • Customer.cs
      • Order.cs

スキーマ名は、アプリが必要とする生成されたクラスを分離するためにあります。たとえば、この中央フォルダーから生成されたコードを取得する ABC アプリがあります。次のように、ビルド前のイベントでそれを行っています。

del /F /Q $(ProjectDir)Entities\generated*.cs

copy $(ProjectDir)....\generated-code\abc*.cs $(ProjectDir)Entities\generated*.cs

そのため、すべてのビルドで、Nant スクリプトはジェネレーターを実行し、すべてのコードを中央の保持場所に配置します。次に、ソリューション ビルドを開始します。これには、生成されたクラスを必要とする各プロジェクトのビルド前イベントが含まれます。

だからここに私が見ている摩擦があります:

1) 新しいアプリごとに、このビルド前イベントをセットアップする必要があります。これをしなければならないのはちょっと面倒です。

2)ビルドサーバーではコードを生成しないため、実際にはこれらの各コマンドの前に IF $(ConfigurationName) == "Debug" があるため、リリースビルドでは発生しません

3) コマンドが失敗し、ローカル ビルドが失敗することがあります。次の場合は失敗します: - 生成されたコードがまだない (新しいプロジェクトをセットアップしただけで、データベースがまだない) - ディレクトリに既存のコードがない (最初のビルド)

通常、これらはマイナーな修正であり、新しいプロジェクトまたは新しいマシンをビルドで起動して実行する方法をハッキングしただけですが、ワンクリック ビルドの涅槃を妨げています。

ですから、もう少し耐久性があるところでこれを改善する方法についての提案を聞きたいです。アプリケーション フォルダへのコードのコピーを NAnt スクリプトに移動することはできますか? これは私にはちょっと後ろ向きに思えますが、私はその議論に喜んで耳を傾けます。

OK、発射してください:)

0 投票する
5 に答える
13651 参照

java - Apache ANTターゲットを一般化する方法はありますか?

アプリケーションをビルドするためのApacheANTスクリプトがあり、結果のJARファイルをバージョン管理(この場合はVSS)にチェックインします。ただし、このプロジェクト用に2つのJARファイルをビルドしてから、両方をVSSにチェックインする必要がある変更があります。

元のJARファイルをVSSにチェックインする現在のターゲットは、いくつかのプロパティを介してJARファイルの名前を検出します。このターゲットを「一般化」して、任意の名前のJARファイルをチェックインするために再利用できるようにする簡単な方法はありますか?通常の言語では、これは明らかに関数パラメーターを必要としますが、私の知る限り、ANTには同等の概念は実際にはありません。

0 投票する
4 に答える
141 参照

version-control - 多くの保留中の変更のうちの1つだけを含むビルドをどのように作成しますか?

私の現在の環境では、「クリーンな」ビルドマシンがあり、コミットされたすべての変更の正確なコピーがあり、それ以上でもそれ以下でもありません。

そしてもちろん、私は自分のマシンを持っており、数十のファイルが「進行中」の状態になっています。

多くの場合、1つの変更だけでアプリケーションを構築する必要があります。たとえば、タスクABCを終了し、その変更のみでEXEを作成したいとします。

しかしもちろん、テストされるまでリポジトリに変更をコミットすることはできません。

分岐はこれにはやり過ぎのようです。テストビルドとリリースの変更を分離するために、環境で何をしますか?

@Matt b:では、変更に関するフィードバックを待つ間、何をしますか?あなたはいつもただ一つのことに取り組んでいますか?

0 投票する
2 に答える
340 参照

build-process - PHP スクリプトまたはインタープリター言語で「ビルド」できますか?

間違っている場合は訂正してください。ただし、「ビルド」は「コンパイル」であり、すべての言語がコンパイルされるわけではありません。継続的インテグレーションには、コンポーネントを構築して、単体テストを超えて機能し続けるかどうかを確認することが含まれますが、単純化しすぎている可能性があります。しかし、プロジェクトにコンパイルできない言語が含まれている場合、どのようにナイトリー ビルドを実行したり、継続的インテグレーション手法を使用したりするのでしょうか?

0 投票する
9 に答える
9163 参照

c++ - make を置き換えることができる C++ プロジェクト用の優れたビルド ツールはありますか?

非常に大規模な C++ プロジェクトを構築するために、GNU Autotools や Make に代わる素敵できちんとしたツールがあるかどうか疑問に思っています。これらは使用するのが非常に複雑です。

プロジェクトが小さい場合、de Autotools が必要とするすべてのファイルを生成するのは簡単ですが、ソース コードが多くのディレクトリに分割され、複数のサード パーティ ライブラリと多くの依存関係がある場合、「Autotools 地獄」に陥ります。

推奨事項をありがとう