2011年8月30日火曜日

Bitbucket利用してみる

ドキュメントがしっかりしてるので、詳しくはこちらを。

Bitbucketって何?
→gitでいうgithubの、Mercurial版。

Mercurialって何?
→最近(ってもだいぶ前からだけど)流行の分散型ソース管理システム。

■Mercurialのインストール
python-devが入ってなかったので、追加で入れた。
$ sudo apt-get install python-setuptools
$ sudo apt-get install python-dev
$ sudo easy_install Mercurial
正しく入ったかテスト
$ hg --version
Mercurial Distributed SCM (version 1.9.1)
(see http://mercurial.selenic.com for more information)

Copyright (C) 2005-2011 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ユーザ情報を設定
$ vi .hgrc
$ cat .hgrc
[ui]
username=名前<メルアド>
[web]
cacerts = /etc/ssl/certs/ca-certificates.crt
[web]の項目が無いと、HTTPS経由で作業しようとしたときに警告がたくさん出る。
Ubuntu以外の環境の場合、以下を参考に。

■Bitbucketに登録
bitbucketのサイトにアクセス。"Sign up free>>"という黄色いボタンをクリック。アカウントを作成する。
OpenIDにも対応しているので、Google等のアカウントを使うと楽。
登録時に求められるNameとPasswordが、Mercurialからアクセスするときに必要になる。
また、登録時に入力したメールアドレスに、確認メールが飛んでいるので、URLをクリックしてメールアドレスの確認を完了しておく。

■リポジトリ作成
bitbucketのRepositoriesからcreate repositoryを選択。
必要項目を埋める。Webとかはサイトが無ければ空欄でおk。
Nameの横の"Private"にチェックが入っている場合、プライベートなリポジトリとなる。
デフォルトでチェックが入っている。公開しない場合はそのままチェックONでいいと思う。

■一通り試す
以下適当な作業フォルダで。
$ hg clone https://bitbucket.org/ユーザ名/リポジトリ名
$ cd リポジトリ名
$ vi test.txt
$ cat test.txt
test
てすと
$ hg add test.txt
$ hg commit -m "にほんごテスト"
$ hg push
bitbucketのサイト上のリポジトリを確認しに行く。
Web上からソースを見ると文字化けが発生しているが、ソースをDLした場合に文字化けが発生していないので、OKとする。

SSHとかはまた今度。

2011年8月7日日曜日

VirtualBox上のUbuntu11.04にPHP開発環境

tddbc1.7参加にむけて、サブPCのEeePC 1215Nに、PHP開発環境を立てることになったので、作業メモ。
※仮想環境で作業してみた結果、サブPCのスペックでは快適に作業できなかったため、実際にはUbuntu11.04をデュアルブートで利用しています。
NetBeansのインストール以降の作業は、仮想・物理マシン関係なく行えるので、そのまま残しておきます。

■仕様
  • VirtualBox上のUbuntu11.04をメインにする。
  • Apache、PHPはゲストOS内で動かす。
  • ホストOSのブラウザからも、開発中のサイトの確認ができるようにする。
  • PHPUnitも動くように。
  • IDEはNetBeans7.0を選択。一応、Eclipseも動くようにはしておく。
■前準備
  • Ubuntu Japanese Teamのサイトから、日本語版のUbuntu Desktop 11.04のisoをDLしておく。
  • VirtualBoxは最新版をDL、インストールしておく。
■VirtualBoxにUbuntu11.04をインストールする。
  1. VirtualBoxで新規ボタンを押して、ウィザードにしたがって新規仮想マシンを作成。
  2. まずは設定で、
    システム→メインメモリ:1024MB,
    ディスプレイ→ビデオメモリ:128MB, 拡張機能:3D...にチェック,
    ネットワーク→アダプタ2を有効化、割り当てをホストオンリーアダプタに。
  3. 仮想マシンを起動。初回起動ウィザードにて、Ubuntu11.04のisoイメージを選択する。
  4. Ubuntuのインストールウィザードに従って、インストール。
  5. 再起動後、ログイン。クラシックモードでの起動になることを確認。
  6. アップデート・マネージャが起動すると思われるので、そのままアップデートを実行。
  7. Guest Additionsのインストール。
    VirtualBoxのメニューのデバイスから、Guest Additionsのインストールを選択。
    Ubuntu上でターミナルを起動し、GuestAdditionsインストールスクリプトを実行。
    完了後、再起動。
  8. テーマ崩れの調整。
    こちら[http://akira.matrix.jp/?p=393]を参考に、/etc/gdm/Xsessionを修正し、再起動。
  9. ccsmを入れて見た目を好みに調整。この辺はお好みで。
■NetBeans7.0.1のインストール
  1. NetBeansの公式サイト[http://netbeans.org/]から、インストーラをDLする。
    ダウンロードバンドルは、とりあえず「すべて」にしておく。
  2. ダウンロードしたインストールシェルスクリプトを、ターミナルから叩く。sudoつけて。
  3. ウィザードに従ってインストール。
    基本的には「Next」でOKだが、JUnitのインストールは行うこと。
  4. 文字を滑らかにする。
    /usr/local/netbeans-7.0.1/etc以下にあるnetbeans.confを開き、netbeans_default_optionsの最後に以下を追記。
    -J-Dawt.useSystemAAFontSettings=lcd
  5. NetBeansを起動。
    ヘルプ→更新の確認。更新があれば行っておく。今回は無かった。
■Apache+PHPのインストール。
  1. ホストOS→ゲストOSにpingが通ることを確認しておく。
    Ubuntu側でifconfigを実行し、eth1のIPアドレスを確認。
    そのIPアドレスにホストOSからpingを打つ。
  2. apacheのインストール。
    sudo apt-get install apache2
  3. apacheの起動確認。http://ゲストOSのIPアドレス/にアクセス。It works!と表示されればOK。
  4. PHPのインストール。
    sudo apt-get install php5
  5. 念のため、apacheを再起動。sudo /etc/init.d/apache2 restart
  6. ドキュメントルートの/var/wwwのパーミッションを変更。一般ユーザからかけるようにしておく。
  7. /var/wwwにphpinfo()を実行するだけのPHPスクリプトを配置し、ブラウザからアクセスする。
■PHPUnitのインストール
PHPUnitのマニュアル[http://www.phpunit.de/manual/current/en/installation.html]を参考にインストールを行う。
  1. pearをインストール
    sudo apt-get install php-pear
  2. pearのバージョンをあげておく。
    sudo pear upgrade PEAR
  3. pear channel-discoverにて、上記マニュアルに記載されている3つのチャンネルを登録する。
  4. PHPUnitをインストールしようとすると、いくつか足りないパッケージがあり失敗するので、都度インストールを行う。
    最終的には、以下のようになる。
    sudo sudo pear install channel://pear.php.net/Net_URL2-0.3.1
    
    sudo pear install channel://pear.php.net/HTTP_Request2-2.0.0RC1
    sudo pear install phpunit/PHPUnit
  5. phpunit --versionと叩いて、バージョンが表示されることを確認しておく。
■NetbeansとPHPUnitの連携を確認

  1. NetBeansを起動。PHPプロジェクトを作成。
  2. 適当なクラスを新規作成。
    空で良いのでメソッドを1個追加しておく。
  3. 「ツール→PHPUnitテストを作成」を実行。
  4. テストフォルダを選べと言われるので、参照ボタンを押してフォルダを選ぶ。
    プロジェクトフォルダと同一だと怒られるので、新規に"test"というディレクトリを作って、選択しておく。
  5. プロジェクトをテスト(Alt+F6)で、テストを実行。100%通ることを確認。