このビデオでは レポジトリにコミットされた
パッケージのバージョン間の差分を
ブラウズできることをお見せします。
ローカルレポジトリを使います。 つまり SmalltalkHub は使いません。
ローカルレポジトリを使って
チーム作業でコードの差分を取ったり
マージしてチーム内で 共有することができます。
Monticello を使います。 実際、こうして
このパッケージのバージョンを たくさん作ってきました。
Open をクリックして レポジトリを開きます。
ここに私のパッケージの
全てのバージョンが表示されます。
さて、最後のバージョンを
ブラウズします。
つまりレポジトリにあるパッケージの 中に何があるのかを見たいと思います。
Browse すれば パッケージの最新バージョンを
見ることができます。
また、拡張を見ることもできます。 既存のクラスへの拡張です。
ここで古いバージョン たとえばこれを
ブラウズすると
クラスが 2 つしかなく 拡張もないことがわかります。
既にお見せした通り サーバ上に公開したものを見て
中身を見ることができます。
また、イメージ上には 最新のバージョンがあります。
これらの差分を見ることができます。
つまり、指定したイメージと
現在ロードされているものの 差分を見ることができます。
これを見ることで このパッケージをロードしたら
これらのメソッドが削除されてしまう ということが判ります。
もちろん、それらのメソッドを 見たいわけです。
ここで History ボタンを使うと
例えばバージョン 7 と バージョン 4 の間で
何が起きたのかを知ることができます。
バージョン 7 を選んで History ボタンをクリックすると
いくつかのバージョンが表示されます。
バージョン 4 を選ぶと
バージョン4 と
バージョン 7 の差分を 見ることができます。
すると、その間にやったことが ここに表示されます。
ここでは単に色々なものを追加しただけ なのですが
もし修正があれば
例えばメソッドのプロトコルを 変更していたら
そういった変更が表示されます。
同じようにして
バージョン 11 と バージョン 8 の間で
何が起きたかを見ることができます。
ここでは + 等を追加しています。
Pharo では 複数メンバーでのプロジェクトを
管理するためのツールが揃っている ということが解ったでしょう。
さらに、SmalltalkHub や SqueakSource のような
システムでアクセス権を管理して
Pharo でのグループ作業を することができます。
ちなみに、Pharo 自体も
こうして開発されてきました。