More Related Content
More from Shogo Kawahara (7)
Composer
- 1. Dependency
Management tool
Composer
Shogo Kawahara <kawahara@bucyou.net>
- 4. だれやねん
• @ooharabucyou ¦ かわはら しょうご
- 5. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
- 6. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
• 最近は Rakuten という会社で Symfony2 ・Java
Spring Framework・Groovy と戯れる日々
- 7. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
• 最近は Rakuten という会社で Symfony2 ・Java
Spring Framework・Groovy と戯れる日々
• 外向きのAPIをうぉうんする人
- 8. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
• 最近は Rakuten という会社で Symfony2 ・Java
Spring Framework・Groovy と戯れる日々
• 外向きのAPIをうぉうんする人
• PHP歴は 5年くらい?
- 9. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
• 最近は Rakuten という会社で Symfony2 ・Java
Spring Framework・Groovy と戯れる日々
• 外向きのAPIをうぉうんする人
• PHP歴は 5年くらい?
• 23歳児
- 10. だれやねん
• @ooharabucyou ¦ かわはら しょうご
• ちょっと前まで OpenPNE とか作ってた (元手嶋屋ア
ルバイト)
• 最近は Rakuten という会社で Symfony2 ・Java
Spring Framework・Groovy と戯れる日々
• 外向きのAPIをうぉうんする人
• PHP歴は 5年くらい?
• 23歳児
• http://github.com/kawahara
- 16. 依存管理?
Framework-2.1.0
Framework
Framework
require Framework
Framework
Framework
Component 2.1.0
Component 2.1.0
Library Foo-1.0.0 Component 2.1.0
Component 2.1.0
Component 2.1.0
require
require
Library Bar-1.0.0
こういった管理をやる必要がある
(常に Releasable なものを用意する。) Continuous
Delivery
p.367 参照
- 30. • Dependency Management
Version Control
• 「Aライブラリ ver2.1.0 は Bライブラ
リ ver 2.1.0 を必要としている」とい
う状況を常に創りださなければならな
い。
- 33. そうだね
git から svn の
プロジェクト
submodule にできないね
(逆も然り)
- 44. Composer
• PHP 5.3.2 <= 用
• json でシンプルパッケージ定義
• autoload 機能
• svn, git, hg, PEAR, PEAR2 のパッケージも
管理可能
- 45. Composer
• PHP 5.3.2 <= 用
• json でシンプルパッケージ定義
• autoload 機能
• svn, git, hg, PEAR, PEAR2 のパッケージも
管理可能
• gitはインストールほぼ必須
- 47. インストール
• curl -s http://getcomposer.org/
installer | php
• or
• php -r "eval('?
>'.file_get_contents('http://
getcomposer.org/installer'));"
- 53. Symfony Standard
の場合
• 既に、composer の autoload.php が
ロードされているので、ライブラリを
落とした時点で使える。
- 54. そして Symfony2.1
• php composer.phar create-project
symfony/framework-standard-edition
path/ v2.1.0-beta1
• 新しい Symfony2 Framework’s Project
を作成
- 56. 実用 Composer
• Travis CI with Composer
• http://travis-ci.org/#!/doctrine/
DoctrineBundle/jobs/1654133
- 57. 欠点
• たまに (composer自体が) ぶっ壊れる
• composer self-update で最新版が手に入
るが、最新版が動かないことが、、、
(2012/06現在)
• Symfony2.1 リリース後は stable なもの
を配ってくれるといいのだが…。
- 60. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
- 61. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
- 62. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
• Packagist 死んだ
- 63. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
• Packagist 死んだ
• Test Fail -> CI Tool に怒られる
- 64. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
• Packagist 死んだ
• Test Fail -> CI Tool に怒られる
• github.com 死んだ
- 65. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
• Packagist 死んだ
• Test Fail -> CI Tool に怒られる
• github.com 死んだ
• Test Fail -> CI Tool に怒られる
- 66. 実際にプロダクトで
つかった思い出 (怪談・失敗例)
• composer update したいのにできないでござる (composer 自体が
壊れている)
• Test Fail -> CI Tool に怒られる
• Packagist 死んだ
• Test Fail -> CI Tool に怒られる
• github.com 死んだ
• Test Fail -> CI Tool に怒られる
• autoload の場所変わった
- 67. お役立ち資料
• Documents
• http://getcomposer.org/
• Easy Package Management with Composer
• http://net.tutsplus.com/tutorials/php/easy-package-
management-with-composer/
Editor's Notes
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n