2016-12-28 16 views
0

私はGitにC#ソリューションを持っています。どのように新しいディレクトリにチェックアウト(クローン+チェックアウトブランチ)し、それにmsbuildを呼び出すことができますか?チェックアウトとビルドの方法

私は管理者の開発者コマンドプロンプト2015を使用していますが、git cloneとcheckoutはうまく動作しますが、msbuildは私に多大なエラーをもたらします。参考文献+ナゲットライブラリは解決されていないようです。

MSBuildでこれを解決するオプションが見つかりません。私の目標は、チェックアウトを自動化し、新しいディレクトリに構築するスクリプトを用意することです。

答えて

0

Visual Studio内でソリューションを構築するときには、NuGet Package Restoreのような追加手順を自動的に実行し、実際にはmsbuildを呼び出してソリューションをコンパイルします。しかしながら、これらは2つの異なるステップである。

Visual Studio以外でソリューションをコンパイルしようとすると、これら2つの異なる手順を処理する必要があります。

たとえば、あなたはおそらく実行する必要があるとしている。

nuget restore ./path to sln file.sln 

し、その後、あなたはそれはあなたの解決のために動作させるために必要な引数を渡し、MSBuildのを呼び出します。

私は個人的な観点から、これらのことをスクリプト化するのが好きです。私はCakeが好きですが、あなたのニーズに最も適したものを試してみることをお勧めします。 build.cakeスクリプトの例はhereです。ご覧のとおり、これにはVisual Studioがあなたのために行う可能性のある「追加の」ステップがすべて含まれています。

+0

恐ろしく!私はスタジオの中で一日中過ごす必要があることを恐れていた...私は今、ターミナルの新鮮な空気を感じる!私はナゲット(コマンドラインアプリ)を持っていませんでしたが、VSIX拡張だけでしたが、今は修正されています。私はこれがオープンソースの環境で使っているMaven、Ant、Gradleなどの製品よりも人気が高いと思いますか? –

+0

btw:私のソリューションには54のプロジェクトが含まれています....どこに私がそれらを構築するのに役立つケーキのテンプレートを見つけることができるか分かりますか? preferrably正しい順序でも... –

+0

それは簡単な質問に答えることはできません。それらの製品はすべて、自分がしていることをして、うまくやっています。あなたが望むことをしていないかもしれません。私自身の個人的な好みについては、私が書いているビルドスクリプトを、私が書いている基礎となるアプリケーションと同じ言語にしたいと思っています。私の場合はC#です。完全公開、私はCakeプロジェクトの保守担当者の1人ですので、少し偏っています:-) –

関連する問題