0

TFS 2010 ビルド サーバーをセットアップしています。しかし、現在、「カスタムビルドツール」を使用したプロジェクトが「アクセス権がない」ためにビルドされないという問題があります。

プロジェクトは C++ です。

カスタムビルドツールは「Pro*C」です。基本的に、*.pc ファイルがあり、*.cpp ファイルが生成されます。ただし、ビルド サーバーでは、ディレクトリ/ファイルは読み取り専用です。そのため、「アクセスなし」でクラッシュします。

TFS から *.cpp ファイルを削除しようとしました。生成されたファイルが存在しないようにします。しかし、どうやらフォルダも読み取り専用であり、新しいファイルを作成することはできません。

誰かがこれに対する回避策を持っていますか?

4

2 に答える 2

1

http://msbuildtasks.tigris.org/からダウンロードできるMSBuild Community Tasksというプロジェクトがあります。自動化された tfs-build のために自分で使用しました。msbuild-project にいくつかの拡張機能を提供します。そのうちの 1 つは、いわゆるAttribタスクです。これにより、プロジェクトからファイル (およびおそらくフォルダー) の属性を変更することができます。Web サイトの表には記載されていませんが、ドキュメントに記載されています。ドキュメントのサンプルとして、選択したターゲットに次の行を追加できます。

<Attrib Files="Test\version.txt" ReadOnly="true" Hidden="true" System="true"/>

これは、次のように item-group でも機能すると思います

<Attrib Files="@(AllYourFiles)" ReadOnly="true" Hidden="true" System="true"/>

使用する場合は、ビルド サーバーにインストールすることを忘れないでください。;)

于 2012-05-04T12:47:17.940 に答える
1

これらのオプションのいずれかをお勧めします。

  • ビルド プロセスによって生成された .cpp ファイルをソース管理に配置しないでください。
  • 出力ファイルを書き込み可能な中間フォルダーに書き込むように Pro*C の設定を変更します。
  • 問題のあるファイルを処理のために中間の場所にコピーするビルド ステップを追加します。
  • これらのファイルへのファイル アクセスを処理のために読み取り可能にするビルド ステップを追加します。
  • これらのファイルをときどきビルドする必要がある場合は、開発者のマシンで Pro*C を使用して手動でビルドし、結果をチェックインします。これにより、デスクトップまたはビルド サーバーのビルドごとに変更されていないファイルを不必要に再ビルドする必要がなくなります。
于 2012-05-04T11:56:39.243 に答える