Kikuchy's Second Memory

技術のこととか、技術以外のこととか、思ったことを書き留めています。

CodePlexを使ってみる(+Tem Foundation Serverも使ってみる)

「せっかく作ったプログラム。どうせだからソースコードも公開して、いろんな人に改造して使ってもらいたい」

そんな風に思う時があるのではないでしょうか。特にライブラリとかユーティリティ系のプログラムを書いたとき。
もちろん、プログラムのバイナリと一緒にソースコードも配布してしまうのも一つの手ですが、どうせならそれ、オープンソースソフトウェア用のリポジトリで管理しませんか?

リポジトリで管理すると何が良いかというと、

  • 見に来た人がブラウザだけでソースコードを確認できる
  • 多人数で一つのプログラムを一緒に開発できる
  • もちろん、公開したプログラムを基に、別のプログラムを作ってももらえる
  • バージョン管理もできて便利
  • リポジトリサービスによっては、プロジェクト用のWikiが付いてたり、Issue Trackができたりする

という良いことがたくさんあります。特に、自分が作ったプログラムの開発に、見ず知らずの人が手を貸してくれる、というのは大変うれしいものです。
どうですか? リポジトリ作ってみたくありませんか?


作りたくなったら、公開リポジトリを作ってみましょう!

そういったリポジトリサービスはSourceForgeGithubが有名ですが、.Net系のプログラムを書いてるなら、またVisual Studioを使って開発をしているならば、CodePlexがおすすめです。

なぜCodePlexなのかというと、ズバリ

Team Foundation Serverが使える

ということ!
VisualStudioと連携して動いてくれる、バージョン管理サーバーです。バージョン管理だけでなく、メンバーのお仕事の管理もできちゃうスグレモノ。らしいです。
私もよくわかっていませんが、とりあえずVSに完全に統合されているというのが使いやすのでおすすめです。



さて、それではCodePlexでTFSを使ったリポジトリを作っていきましょう!
あ、予めCodePlexの会員登録はしておいてくださいね。確か、今はMicrosoftアカウントを持っていればさっさとログインできるようになってたはず。


f:id:kikuchy:20121024194603p:plain
CodePlexにログインした後のトップ画面です。"Create Project"をクリックします。


f:id:kikuchy:20121024194719p:plain
↑プロジェクトの新規作成画面です。このとき、"SOURCE CONTROL"で必ず"Team Foundation Server (also supports Subvertion clients)"を選んで、その下の"Team Explorer"を選択してください。


f:id:kikuchy:20121024195035p:plain
↑プロジェクトのトップページです。ちなみに、この状態ではまだプロジェクトは公開されていません。"SOURCE CODE"をクリックします。


f:id:kikuchy:20121026234543p:plain
↑当然まだ何もありません。"Connect"をクリック。


f:id:kikuchy:20121027003539p:plain
↑TFSのアドレスと、ログインに必要な情報が出てきます。控えておきましょう。TFSへのログインユーザー名はCodePlexのユーザー名と違うことに注意してください。


f:id:kikuchy:20121027003714p:plain
↑一度CodePlexから離れてVSに移ります。そしておもむろにソリューションを作ります。すでに作ってあるソリューションを使いたい方は、そのソリューションを開きます。


f:id:kikuchy:20121027004029p:plain
↑"チーム"→"Team Foundation Server への接続"をクリック。


f:id:kikuchy:20121027004302p:plain
↑ダイヤログが出てきます。(画像はすでにサーバーが登録されてしまっていますが、)まだサーバーを登録していない場合は登録します。"サーバー"→"追加"を順にクリック。


f:id:kikuchy:20121027095102p:plain
↑"Team Foundation Server の名前または URL"に、控えておいたTFSのアドレスをコピペします。そして"OK"を押すと今度はユーザー名とパスワードを聞いてくるので、先ほど控えたユーザー名CodePlexのパスワードを入れてください。


f:id:kikuchy:20121027005059p:plain
↑ちゃんと接続できると、先ほど作ったプロジェクト名が出ているはずです。チェックを入れて"接続"を押します。

f:id:kikuchy:20121027005211p:plain
↑"チーム エクスプローラー"が使えるようになります。とりあえずこの画面には用がないので、"ソリューション エクスプローラー"を開きます。


f:id:kikuchy:20121027005409p:plain
↑ソリューションを右クリックして、"ソリューションをソース管理に追加"をクリック。


f:id:kikuchy:20121027005850p:plain
↑先ほど作ったプロジェクトが選択されていることを確認して"OK"。これで、ソリューションのファイルが管理対象になりました。


f:id:kikuchy:20121027012948p:plain
↑まだファイルが管理対象になっただけで、サーバーへアップロードはされていません。チームエクスプローラーに戻って、"ソース管理エクスプローラー"を開きます。


f:id:kikuchy:20121027013839p:plain
↑先ほど作ったプロジェクトを、左の"フォルダー"から選択します。そして、ボタンが小さいですが"チェックイン"のボタンを押します。


f:id:kikuchy:20121027014037p:plain
↑"保留中の変更"の画面が出るので、"コメント"に変更に対する適当なコメントを入れて、"チェックイン"を押します。ダイヤログが出るかもしれませんが、適当に"はい"とか押しておきます。
ソースコードを更新した時には、チェックインをします。


f:id:kikuchy:20121027020412p:plain
CodePlexに戻ってみてみると…ちゃんとソースコードが上がってますね!


あとは、メッセージに従ってプロジェクトの説明文とかを記入していって、Publishすればリポジトリが公開されます!

どうですか? 手順は多いですけれど、そんなに大変じゃないでしょう?
是非やってみて、あなたのコードを他の人の役に立ててください。



2012/10/31 追記
上記で例に出したプロジェクトに、ソースコードを上げて公開しました!
SimpleImageCacherRT - Home
画像ファイルのキャッシュを自動的にとってくれるキャッシュ機構です。
仕組みも使い方も動作も単純なものですが。
ご意見、ご感想があれば是非コメント欄やTwitter, Facebookなりでお教えください!
あと開発者もお待ちしております!w


にじげん!を作っていた頃からアイデアはあったのですが、にじげん!に使うには仕組みが単純すぎたので使えなかったものを再利用できる形にしてみました。
今から作ろうとしているアプリに使う予定です。