• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Git 20100313
 

Git 20100313

on

  • 2,423 views

 

Statistics

Views

Total Views
2,423
Views on SlideShare
2,367
Embed Views
56

Actions

Likes
3
Downloads
16
Comments
0

5 Embeds 56

http://sns.labs.fujitsu.com 46
http://s.deeeki.com 6
http://www.slideshare.net 2
http://webcache.googleusercontent.com 1
http://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Git 20100313 Git 20100313 Presentation Transcript

    • とりあえず Git ~ Git 入門前夜~ 天野卓 @ ToI 企画
    • 自己紹介 佐久市で Web アプリケーションを開発しています。 LAMP Movable Type のプラグインをフリーソフトウェアと して配布しています。 http://tec.toi-planning.net GitHub でも活動しています。 http://github.com/usualoma
    • この発表に関する資料 以下の URL からダウンロードできます。 http://www.slideshare.net/tag/nseg
    • もくじ バージョン管理システムとは Git に至るまでの歴史 Git の特徴 Git のどこが Life Changing か
    • バージョン管理システムとは
    • 過去のファイルを保存する
    • 過去のディレクトリの状態を保存する
    • 過去のディレクトリの状態を保存する
    • バージョンにメタ情報を付ける
    • 保存したディレクトリ間の差分を知る
    • 編集内容にメタ情報を付ける
    • 編集内容をマージする
    • Git に至るまでの歴史
    • 年表 1982: RCS 1990: CVS 2001: Subversion 2003: SVK 2005: Git, Mercurial, Bazaar(2004)
    • RCS ファイル単位でバージョンを管理 vi の代りに ci と打つと管理が始まる
    • RCS
    • CVS 複数の RCS をまとめて管理 ある時点の状態にタグを付けることが可能 サーバー / クライアント形式でネットワーク越しの 共有が可能
    • CVS
    • Subversion 高性能な CVS コミットがアトミック ディレクトリの移動や削除をサポート
    • Subversion
    • SVK Subversion や CSV を分散型のように使うための ツール SVK 単体でも利用可能
    • SVK
    • Git Git - Fast Version Control System Linus Torvalds が Linux のソースコードを管理する ことをターゲットにして開発 Linux のカーネル ソースコードの規模が大きい 更新が頻繁に発生する
    • Git
    • Git の特徴 分散型をサポート 差分ではなくてスナップショット その他
    • 分散型とは どのマシンもサーバーでありクライアントでありうる リソースはそれぞれのマシンが完全な形で持つ 1つのマシンに障害があった場合も大丈夫 リソースが手元にあるため高速に動作
    • 集中型
    • 分散型
    • 分散型 ( 集中型っぽく )
    • 分散型 ( 別の使い方 )
    • 差分ではなくてスナップショットとは 差分 ( 履歴 ) は保存しない コミット時点のスナップショットを取る
    • 差分を記録
    • スナップショットを記録
    • スナップショットを記録
    • Git のどこが Life Changing か Git - Fast Version Control System 準備の手間がかからない プログラムの応答速度が速い 後から柔軟に修正できる
    • 準備の手間がかからない 「 git init; git add .; git commit 」 するだけ 他の場所にリポジトリを用意する必要がない
    • プログラムの応答速度が速い (1) ネットワークの遅延がないため応答が速い 変更履歴の表示 (svn log, git log) A: 9 秒 , B: 1 秒 , Git 0.1 秒以下 差分の表示 (svn diff, git diff) A: 32 秒 , B: 3 秒 , Git 0.1 秒以下 ブランチの移動 (svn switch, git checkout) A: 10 秒 , B: 2 秒 , Git 0.1 秒以下 A: svn co http://synergy2.svn.sourceforge.net/svnroot/synergy2/trunk B: svn co http://svn.sourceforge.jp/svnroot/ttssh2/trunk Git:git svn clone -T=trunk http://svn.sourceforge.jp/svnroot/ttssh2/
    • プログラムの応答速度が速い (2) 一瞬で ( ローカル ) ブランチが作成される リモートサーバーへアクセスする必要がないため ファイルをコピーする必要がないため
    • 後から柔軟に修正できる (1) ブランチのマージが簡単 マージアルゴリズムも賢い ( らしい )
    • 後から柔軟に修正できる (2) commit の修正が簡単にできる
    • 後から柔軟に修正できる (2) commit の修正が簡単にできる
    • Git のどこが Life Changing か Git - Fast Version Control System 準備の手間がかからない プログラムの応答速度が速い 後から柔軟に修正できる とりあえず Git しておこう!
    • まとめ Git は簡単に始められます Git は快適です Git は勉強にもなります
    • 参考 URL http://git-scm.com/ http://progit.org/book/ja/ http://www.ep.sci.hokudai.ac.jp/~epnetfan/za gaku/2009/0925/pub/ http://ja.wikipedia.org/wiki/Git http://en.wikipedia.org/wiki/Git_(software)
    • 参考書籍 「入門 Git 」 濱野 純 (Junio C Hamano)
    • ご静聴ありがとうございました。