6

Visual Studio 2012で開発したASP.NET、MVC4、C#アプリケーションがあります。これまで、VSPublish機能を使用してAzureWebサイトに正常に展開しました。

これで、Azure WebサイトでGit公開を正常にセットアップし、GitHubリポジトリにリンクしました。ローカルマシンでリポジトリを初期化し、ロット全体をGitHubリポジトリにプッシュしました。Azureは、これをすべてすぐに実行しました。

さて、.gitignoreファイルがないと、これは完全には機能しないと思っていたので、私は正しかった。

だから私の質問は:私のローカルのVisual Studio作業ディレクトリから、リポジトリから何を省略すべきですか?つまり、.gitignoreには何を含める必要がありますか?

また、Azure Webサイトでアプリケーションを動作させるために考慮すべき他の要素はありますか?

注:1。https: //gist.github.com/2589150
をよく調べましたが、VS作業ディレクトリに表示されているものと一致していないようです。 2. https://github.com/github/gitignore/blob/master/CSharp.gitignoreの方が近いようです。現在、状況に当てはまるビットを理解しようと取り組んでいます。たとえば、bin / *を除外すると、アプリケーションはAzureにデプロイできません。

更新:
1)@levelnisによって提案されたように、web.configファイルを変更してカスタムエラーをオフにしました。

<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>  

問題は、VSPublish機能によってAzureに変換されなくなったデータベース接続文字列であることがわかりました。これを直接変更して、リポジトリにコミットする必要がありました。

ヒント:別の公開プロファイルを使用して一時的なAzure Webサイトに公開することにより、VS公開機能がAzureに何を設定したかを確認するだけで、正しい文字列を見つけました。

これにより問題が修正され、展開は非常にスムーズに進みました。

2)この時点で、.gitignoreファイルとして次のものがありました。

    #フォルダを作成する
    obj /

    #ユーザー固有のファイル
    *。ユーザー

    #SQLServerファイル  
    App_Data/*。mdf
    App_Data/*。ldf

整理整頓のためにもっと切り抜くことができるようですが、実際には非常にスムーズに動作するGitHubを介したデプロイの正しい操作には影響しませんでした。

最後に、ファイルを削除せずにリポジトリから削除するための便利なgitコマンド。いくつかの例:

    git rm -r --cached obj / *
    git rm -r --cached */*。user

そして、追加、コミット、プッシュする前に、明らかにこれらを.gitignoreに追加します。

4

2 に答える 2

2

問題は、.gitignoreファイルがないことに関連していない可能性があります。最悪の場合、コンパイルされたdllをリポジトリ内のbinフォルダーに含めることになります。これは、一般的なメンテナンスの観点からは非常に悪い考えですが、Azureへの公開の観点からはそうではありません。

エラーは死の黄色い画面ですか、それとも単にそのメッセージが表示された空白の画面ですか?後者の場合、展開が失敗したように聞こえます。WebサイトにFTPで接続して、Webサイトのファイルが本来あるべき場所にあるかどうかを確認できます。そこにあるLogsディレクトリもあります-エラーの診断に役立つ何かがあるかもしれません。これが私のプロジェクトの.gitignoreです(追加するものやビットを削除する必要があるかもしれませんが、少なくともdllが邪魔になりません):

# git ignore file
_ReSharper.*
[B|b]in/
obj/
*.suo
*.user

これはAzure固有ではなく、ASP.NET固有です。ちなみに、dllを削除する必要があり、それらがコミットされている場合は、binパスを.gitignoreに追加し、すべてのdllも削除する必要があります。

編集:追加<customErrors mode="Off"/>-少なくともエラーが何であるかを教えてくれます

于 2013-01-04T21:58:40.143 に答える
0

Visual Studioのgitignoreファイルの良い例は、次の場所にあります。

https://gist.github.com/2589150

Azureでの公開については、十分に精通していませんが、ここで必要なものがすべて見つかると思います。

http://msdn.microsoft.com/en-us/library/windowsazure/hh420322.aspx

さらに良いことに、Git toAzureでの公開に関するMicrosoftチュートリアル:

http://www.windowsazure.com/en-us/develop/net/common-tasks/publishing-with-git/

于 2013-01-04T20:14:03.167 に答える