アーカイブ

Archive for the ‘TFS’ Category

TFSブランチガイド

ここ2年ほど開発してきたシステムがちょっと前にリリースされました。早速新機能の開発が保守と同時に走り始めました。ソースコードのブランチなんて切らないほうが絶対にいいんですが、そうとも行っていられないのでブランチを作成することに。

TFSでブランチを計画する際にまず目を当したいのが、下の長澤さんのブログで紹介されているTeam Foundation Server 2010ブランチとマージガイドです。TFS 2012は使ったことが無いのですが基本的な考え方は変わらないのでこれでフォローできるはずです。ソース管理にGITなんかを使っていると変わってくるのかな??

分岐ガイドのメインドキュメント(TFS_Branching_Guide_Main_2010_v1.pdf)を読む前に、シナリオのポスター(TFS Branching Guide – Scenarios 2010_20100330.pdf)を見るとわかりやすいです。

とりあえず標準分岐計画を元に分岐シナリオを考えることにします。

カテゴリー:TFS タグ:

TFS Everywareでエラーが出たけれどメッセージが読めない。。。

そんなこんなで、EclipseでC言語を利用した開発なんてのをやっているわけですが、EclipseからTFSのリポジトリーにシェルブしようとしたら、こんなダイアログが表示されてシェルブすることができませんでした。

文字化けして読めない。

image

TFSから帰ってきた文字のエンコーディングが予期したものではなかったのが原因なんだろうけれど、対処方法を調べるのがめんどくさいので、おもむろにFiddlerを起動してTFSとの通信を覗いてみる。

Eclipseからの通信をFiddlerで拾うには、Eclipse側のProxy設定を変更する必要があります。Eclipseのウインドウ→設定→一般→ネットワーク設定から、手動プロキシー構成を選択し、Fiddlerの通信ポートを設定します。

image

Fiddlerの通信ポートがわからない場合は、Fiddler側のTool→Fiddler Option→ConnectionsにあるFiddler listens on portがそれです。

image

で、通信をキャプチャーしてみたらこんなのが表示された。どうも、最新バージョンを取っていないのが問題らしい。そういえばTFSのソース管理オプションで、最新ソースを取っていないとチェックインできない設定にした覚えがある。

image

最新を撮り直して、コンフリクトを解消したらちゃんとシェルブ出来ました。

#だれか、TFS Everywareからのメッセージボックスエンコードの設定方法知教えてください。

メモ:Eclipse 対応 Team Foundation Server プラグイン

カテゴリー:プログラミング, メモ, TFS タグ: ,

Team Explorer Everywhereで特定フォルダーのソース管理を除外する。

仕事でC言語を扱う必要が出てきてなかなかテンションが上りません。しかも開発環境にVisual Studioが利用できなく、更にエミュレーターも準備されていないとかどんだけですかと。最近なんとかEclipseが利用できるようになったらしいですがそれまでは独自開発環境でインテリセンスもないとか、Visual Studioでぬるま湯に使っている身としてはなかなか耐えられそうにありません(開発環境はXPじゃないとリモートデバックもできない模様。。。)。

とりあえずEclipseが利用できそうなので、長沢さんの下記記事を参考に既存のソースファイルをTFSリポジトリーに追加します。Team Explorer Everwhereを入れてEclipseのリポジトリーに既存ソースをチェックインするまではできたのですが、ビルドのたびに変更が入るbinフォルダーまでリポジトリーに登録されてしまいました。。。

TFSの極意 Vol.6 | TFS に Eclipse からアクセス! Team Explorer Everywhere 2010

まぁ当たり前なんですが、TFSリポジトリー上からbinフォルダーを削除しても次回ビルド時には新しくバイナリーファイルがプロジェクトに追加されるので常にbinフォルダーが変更状態でバイナリファイルが追加状態になるという。このあたりはVisual Studioを利用すると勝手にやってくれるんですよね。

image

MSDNのTeam Explorer Everywhere関連のドキュメントを見ると、フォルダーの除外方法が掲載されていました。

バージョン管理からの Eclipse プロジェクト リソースの除外

拡張子やファイル名のパターンなどで除外ファイルを識別できる場合は、設定→チーム→無視するリソースから、除外パターンを追加することでソース管理からの除外ファイルを指定することができます。もしくは、複雑な条件が必要な場合は、tpignoreファイルを作成して除外条件を記述することで除外ファイルを指定することもできるそうです。

image

まぁ、うだうだやってもしょうがないので、できるだけサクッと終わらせよう。。。

カテゴリー:プログラミング, メモ, 雑記, TFS タグ: ,

Visual Studio Performance Testing Quick Reference Guide

いまさらですが、Visual StudioのUltimateで利用可能な大量リクエストの負荷測定ツールである、Load Testのクイックリファレンスガイドがとても良くまとまっていたので紹介します。もともとMicrosoftで社内用に作成された、LoadTestのノウハウ集を公開したものらしく、基本なLoadTestの使い方から、レコーディングのTips、バグの回避方法までかなり広範囲に解説されています。

VS Performance Testing Quick Reference V3.6(CodePlex)

上記の日本語訳:『Visual Studio パフォーマンス テスト クイック リファレンス ガイド

Visual Studioのロードテストは、高機能なためにかなり多くの設定項目があります。実際に使い始めるとどこの設定をいじるとどのように負荷がかかるかがわかりにくく、初めて触るときなんかはかなり悪戦苦闘します。 上記のリファレンスガイドでは、そのあたりのパラメーターの設定方法とか、LoadAgentが上手く動かない場合の回避策とか、どのようにテストをカスタマイズすればいいかといった詳細についてかなり詳しくまとめられています。

Visual Studioのロードテストを利用する場合は一度目を通しておくといいと思います。

僕としては、Visual Studio 2008⇒2010の新機能部分の説明がとても嬉しかったです。Webテストの結果から抽出規則を抜き出したり、詳細テストの見方とか。このごろやっと気づいたことがすでにドキュメントにまとめられているとか。もっと早くこのドキュメントに行きつけていたら。。。

このドキュメントはCodePlexでメンテナンスされているようなので、Visual Studio 2012版も期待できます。日本語がいつ提供されるかはMSの予算次第ですが。。。

カテゴリー:インフラ, TFS, Windows タグ: ,

フロント(HTMLページ)が無いWebページのロードテストはどうすればいいのか。

この頃の開発では、WebAPIなんかを筆頭にWebサービスをREST形式で提供する形態が多くなってきているわけだけです。WebAPIのフロントが単純なWebページだった、Visual StudioのWebテストレコーダーなんかでレコーディングすればいいんだけれど、フロントがWindowsアプリだけの場合負荷テストはどうやってやればいいんだろう。

image

そういったテストの場合は、サービス部分のレコーディングにFiddlerを利用できます。いつの間にやらTelerikに買われてしまったFiddlerですが、とりあえず今はまだ無料で利用できます。ここからダウンロードしてインストールできます。

FiddlerでテストしたいAPIのレコーディング後に、File→Export Session→All Sessions…から「Visual Studio WebTest」でWebテスト用に定義ファイルを出力できます。

image image

あとは、Visual Studioで読み込むだけ。

カテゴリー:ASP.NET, TFS

ワークグループ構成のTFSでログインするユーザーを切り替える

2011年12月20日 2件のコメント

この記事は、TFS Advent Calendarの12/20分の記事です。TFS Advent Calendar : ATND

(Live Writerの操作を間違って、フライングで16日に一度公開しちゃっていたんだけれど、素知らぬ顔でもう一度公開します。)

TFSでは構築時にTFSのユーザー管理をワークグループ(ローカルコンピューター)で行うか、ActiveDirectory(ドメインサーバー)で行うかを選択できます。ActiveDirectoryでTFSを構成した場合は、Windowsログイン時にユーザーが確定されるので、その認証情報を元にTFSにシングルサインオンできます。ワークグループモードで作った場合は、Windows側で認証されていないので、TFS接続時にユーザーIDとパスワードを入力してログインします。

とはいえ、ワークグループで作成しても、ユーザーIDとパスワードを入力する機会というのはほとんどありません。ほとんどの場合は、初回にTFSに接続した段階のユーザーIDとパスワードをIEがキャッシュとして持っているものを利用するからです。

ただ、TFSエクスプローラーにはログアウト的なメニューが存在しないので、一時的に別のアカウントでログインしたい場合や、ユーザーの変更などで別アカウントでログインしたい場合は、IEの設定を変更して上げる必要があります。

Visual StudioはIEのセキュリティー設定をもとにTFSに接続に行くので、IEのセキュリティー設定で毎回ユーザーIDとパスワードを入力するように変更します。

インターネットオプション>セキュリティー>TFSのセキュリティーゾーン(ここでは信頼済みサイト)>レベルのカスタマイズ

image_thumb

設定ウインドウの一番下にある、ユーザー認証を「ユーザー名とパスワードを入力してログオンする。」に変更します。

image_thumb1

この状態でVisual Studioを起動すると、チームプロジェクト接続時にユーザー名とパスワードを聞いてくるようになります。

カテゴリー:TFS タグ: ,

チームドキュメントの変更を受け取る

2011年12月14日 1件のコメント

この記事は、TFS Advent Calendarの12/14分の記事です。TFS Advent Calendar : ATND

接続しているプロジェクトをチームエクスプローラーで見ると、ドキュメントツリーの下に幾つかのドキュメントを見て取れます。ここには、プロジェクトで共有するドキュメントなどを格納していくのですが、新しいファイルが追加されたり、ファイルが更新された際にメールで通知を受けるにはどうしたらいいでしょうか。

答え

SharePointの機能を利用して、通知を設定します。

TFSと言うよりも、TFSがポータルサイトに利用しているSharePointの機能なのですが、チームエクスプローラーのドキュメントフォルダーの実体は、そのチームプロジェクトのプロジェクトポータルがホストされているSharePointのリストになります。変更を購読したいリストの通知を設定すればいいだけです。

image

もちろん通知の機能を利用する場合は、ユーザーに対してメールアドレスが設定されている必要があります。TFSをアクティブディレクトリー構成で構築していれば問題ありませんが、ワークグループ構成で構築したい場合は、ユーザーに対してメールアドレスがうまく設定されない(というか、SharePointのユーザー設定からメールアドレスを設定できない)ので、SPUserの設定をどうにか書き換えて上げる必要があります。

PowerShellを利用したメールアドレスの設定についてはこちら
SharePointのユーザーをPowerShellで修正してみる。

プロジェクトポータルのURLがわからない(!?)場合は、チームエクスプローラのコンテキストメニューから、「プロジェクトポータルの表示」をクリックしてプロジェクトポータルを開くのが簡単です。

image

プロジェクトポータルを開いたら、サイドバーから通知を設定したいリストを選択し、リボンのライブラリを開きます。

image

ライブラリタブを開き、ブラウザーをそれなりに大きくすると、リボンに幾つかのアクションが見て取れます。ドキュメントが追加されたり、修正されたりした場合にメールによる通知が欲しい場合は、「通知」>「このライブラリに通知を設定」をクリックします。メーラーにアウトルックを利用している場合は、ライブラリタブの「Outlookに接続」を利用すると、ドキュメントをアウトルックで読んだり、更新を確認できるようになって便利です。

image

通知の設定画面が出てくるので、どの頻度で通知を受け取るか設定してOKボタンをクリックします。

image

誰かがドキュメントに、ファイルを追加するとこんなメールが来ます。

image

カテゴリー:TFS タグ: ,