SlideShare una empresa de Scribd logo
1 de 30
Subversionに
まつわる試行錯誤
2009/6/27 バージョン管理勉強会
        id:kazukichop
自己紹介
• id:kazukichop
    http://d.hatena.ne.jp/kazukichop

    http://twitter.com/kazukichop

• Subversion歴
    2年半
Agenda

1.  Subversionの学習

2.  業務への導入

3.  運用

4.  まとめ
本題に入る前に皆さんに
  アンケートです
バージョン管理システム
を使ったことない人?
Subversionを使ったこと
      ない人?
話は変わって
先日、こんな本
 を読みました
p69.
FTPを使っている場合、ソースコードの管理も手作
業で行っていると思われます。
太古の時代に暮らしているならともかく、何らかの
ソースコード管理システムを使うべきです。
p69.
まだソースコード管理システムを使った事がないな
ら、本書を閉じて大至急 Pragmatic Version
Control を買いに書店へ走るべきです。現代におい
てソースコード管理を使わないというのは愚の骨頂
です。
そこまで言わなくてもw
今からでも遅くないので
Subversion覚えよう!
1. Subversionの学習
私がSubversion
 を覚えた方法
書籍を2冊読んだら
なんとなく分かった!
•Subversion実践入門
  達人プログラマに学ぶバージョン管理
    Pragmatic Version Control の邦訳

•入門Subversion
   Windows/Linux対応
つまづいた事

• 用語や概念がわからない
  リポジトリって結局何よ?

  trunk,branches,tagsは何が違うの?
• リポジトリ:バージョン管理に必要な情報を保
 存する場所

• trunk,branches,tagsの違い:全部単なるディ
 レクトリ。慣例的な名前や用途があるだけで、
 名前に惑わされず、どうやって使うかを理解す
 る。
最低限のコマンドを
       覚える!
•   add
•   checkout (co)
•   commit (ci)
•   copy (cp)
•   delete (del, remove, rm)
•   move (mv, rename, ren)
•   revert
•   status (stat, st)
•   update (up)
後はとにかく使う!


• ローカル環境でサーバ構築メモ等の管理につ
 かってみた
2. 業務への導入
導入検討時の状況

• インフラチームに所属していた
• チーム内でサーバ構築メモは各自が手元に持っ
 ている

• サーバ構築用スクリプトやメンテナンス用のス
 クリプトを書いても共有されていない
導入時の環境
• Tracの導入
     サーバ構築マニュアルはWikiで管理
     各種スクリプトはSubversionで管理
•   コミット時はコミットログをチーム内MLに送
    信(フック機能便利!)

• 全員が最新リビジョンを持っておけば分散バッ
    クアップにもなる(最新がない場合はコミット
    ログ通知の差分から最新に戻す)
環境に慣れてもらう

• TortoiseSVN:windowsでもつかいやすい!
• trunk内に自由な個人用ディレクトリを用意
  共有サーバ代わりに使う
3. 運用
バックアップ

• 毎晩リポジトリをtarで固めてバックアップ
 (深夜にコミットされないので)

• 多分svnadmin dumpやった方が良いです
フックを使う

• postcommitフックを使用してコミット時に
 メールで関係者に通知する

• precommitフックを使用してコミット時にプ
 ログラムのシンタックスチェックを行い、エ
 ラーだったらコミットさせない
4. まとめ
まとめ

• 使った事ない人はとにかく使ってみる
• Trac、Redmineと組み合わせるとより便利に
 なる(導入の提案もしやすい)

• フックは便利なので、慣れてきたら積極的に使
 いましょう!
ご清聴ありがとう
 ございました!

Más contenido relacionado

Destacado

Subversion
SubversionSubversion
Subversionghiblar
 
はじめてのSubversion(サブバージョン)
はじめてのSubversion(サブバージョン)はじめてのSubversion(サブバージョン)
はじめてのSubversion(サブバージョン)西畑 一馬
 
SubversionとSugarsync
SubversionとSugarsyncSubversionとSugarsync
SubversionとSugarsyncHidenori Goto
 
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜suga masao
 
はじめてのReleaseブランチ運用(svn編)
はじめてのReleaseブランチ運用(svn編)はじめてのReleaseブランチ運用(svn編)
はじめてのReleaseブランチ運用(svn編)将 高野
 
Subversionでバージョン管理を!
Subversionでバージョン管理を!Subversionでバージョン管理を!
Subversionでバージョン管理を!Ryuzo Yamamoto
 

Destacado (8)

Subversion
SubversionSubversion
Subversion
 
SVN入門
SVN入門SVN入門
SVN入門
 
はじめてのSubversion(サブバージョン)
はじめてのSubversion(サブバージョン)はじめてのSubversion(サブバージョン)
はじめてのSubversion(サブバージョン)
 
SubversionとSugarsync
SubversionとSugarsyncSubversionとSugarsync
SubversionとSugarsync
 
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜
Subversion の導入から 運用について 〜ワシのTipsは108つまであるぞ〜
 
はじめてのReleaseブランチ運用(svn編)
はじめてのReleaseブランチ運用(svn編)はじめてのReleaseブランチ運用(svn編)
はじめてのReleaseブランチ運用(svn編)
 
Git超入門
Git超入門Git超入門
Git超入門
 
Subversionでバージョン管理を!
Subversionでバージョン管理を!Subversionでバージョン管理を!
Subversionでバージョン管理を!
 

Similar a Subversionにまつわる試行錯誤 090627.Key

Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpTakeshi Komiya
 
SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理ina job
 
サーバ擬人化ユーザ会キックオフ資料 Slideshare ver
サーバ擬人化ユーザ会キックオフ資料 Slideshare verサーバ擬人化ユーザ会キックオフ資料 Slideshare ver
サーバ擬人化ユーザ会キックオフ資料 Slideshare verSeiichiro Ishida
 
20120125 チーム開発
20120125 チーム開発20120125 チーム開発
20120125 チーム開発s_taichan
 
20120125 チーム開発
20120125 チーム開発20120125 チーム開発
20120125 チーム開発Taichi Shindo
 
Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Kazuto Kusama
 
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略Developers Summit
 
vimプラグインでよりよい(ry
vimプラグインでよりよい(ryvimプラグインでよりよい(ry
vimプラグインでよりよい(rysoh335
 
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のりStudy Group by SciencePark Corp.
 
Re: 運用に自動化を求めるのは間違っているだろうか
Re: 運用に自動化を求めるのは間違っているだろうかRe: 運用に自動化を求めるのは間違っているだろうか
Re: 運用に自動化を求めるのは間違っているだろうかMasahito Zembutsu
 
SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括kk_Ataka
 
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpSphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpTakeshi Komiya
 
S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3Takeshi Akutsu
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03Takeshi Komiya
 
Fx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめFx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめMasami Yabushita
 
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しよう
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しようgit初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しよう
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しようStudy Group by SciencePark Corp.
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!ymmt
 
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身Hisateru Tanaka
 

Similar a Subversionにまつわる試行錯誤 090627.Key (20)

Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
 
20090828 Webconlocal
20090828 Webconlocal20090828 Webconlocal
20090828 Webconlocal
 
SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理SVNのすすめ&Redmineでプロジェクト管理
SVNのすすめ&Redmineでプロジェクト管理
 
サーバ擬人化ユーザ会キックオフ資料 Slideshare ver
サーバ擬人化ユーザ会キックオフ資料 Slideshare verサーバ擬人化ユーザ会キックオフ資料 Slideshare ver
サーバ擬人化ユーザ会キックオフ資料 Slideshare ver
 
20120125 チーム開発
20120125 チーム開発20120125 チーム開発
20120125 チーム開発
 
20120125 チーム開発
20120125 チーム開発20120125 チーム開発
20120125 チーム開発
 
Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践
 
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略
デブサミ2014【13-E-3】クラウド時代の環境構築・デプロイ自動化戦略
 
vimプラグインでよりよい(ry
vimプラグインでよりよい(ryvimプラグインでよりよい(ry
vimプラグインでよりよい(ry
 
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり
 
Re: 運用に自動化を求めるのは間違っているだろうか
Re: 運用に自動化を求めるのは間違っているだろうかRe: 運用に自動化を求めるのは間違っているだろうか
Re: 運用に自動化を求めるのは間違っているだろうか
 
SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括
 
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpSphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
 
S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
 
Hachiojipm31
Hachiojipm31Hachiojipm31
Hachiojipm31
 
Fx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめFx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめ
 
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しよう
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しようgit初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しよう
git初心者からgit-flowを使えるレベルになって、リリースとレビューを効率化しよう
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!
 
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身
 

Subversionにまつわる試行錯誤 090627.Key