Git -分散バージョン管理システム-

Post on 14-Dec-2014

449 views 3 download

description

 

Transcript of Git -分散バージョン管理システム-

Git

2009/03/12 Python勉強会

- 分散バージョン管理システム -

アジェンダ

バージョン管理システム?

Git?

ワークフロー

まとめ

バージョン管理システム?

バージョン管理システム?

設計書やソースコードを管理

それぞれに「バージョン」を付与する

現在の主流タイプは「集中型」

バージョン管理システム?

設計書やソースコードを管理

それぞれに「バージョン」を付与する

現在の主流タイプは「集中型」

バージョン管理システムの種類

集中型

分散型

集中型バージョン管理システム

サーバ上に中央リポジトリを設置

開発者は中央リポジトリ経由で開発

チェックアウト, コミット

Subversion, CVS

図: 分散バージョン管理Git/Mercurial/Bazaar徹底比較 (1/5) - @IThttp://www.atmarkit.co.jp/fjava/rensai4/devtool03/devtool03_1.html

集中型の問題点

中央リポジトリを各開発者で共有

開発者Aがコミット

しかし内容にバグがある

各開発者にバグ入りソースが共有される

/(^o^)\

分散型バージョン管理システム

開発者がローカルリポジトリを持つ

コミットなどはそこにする

作業後、中央リポジトリとマージ

Git, Mercurial

図: 分散バージョン管理Git/Mercurial/Bazaar徹底比較 (1/5) - @IThttp://www.atmarkit.co.jp/fjava/rensai4/devtool03/devtool03_1.html

分散型のメリット

コミットしても他開発者に影響しない

好き勝手にコミットできる

ネットワーク環境がなくても作業ができる

コミット権のないプロジェクトへのHack

プロジェクトの完全な履歴も手に入る

Git?

Git?

分散型バージョン管理システム

「ギット」

リーナス・トーバルズ (Linuxの人) が開発

曰く、「CVSはダメ。俺がもっといいの作る」

YouTube: ”Tech Talk: Linus Torvalds on git”

Gitを利用したプロジェクトLinux カーネル

Perl 5

Samba

Ruby on Rails

Merb

Wine

Android

ワークフロー

リモートリポジトリのコピー

$ git clone /path/to/ [プロジェクト名]

ファイル編集, 追加

$ git add [ファイル名]

コミット (ローカルリポジトリに)

$ git commit -m ‘commit!!’

ワークフロー (1/2)

プロジェクトの変更履歴を見る

$ git log

リモートリポジトリのマージ

$ git pull /path/to/ [プロジェクト名]

リモートリポジトリへのコミット

$ git push /path/to/ [プロジェクト名]

ワークフロー (2/2)

まとめ

まとめ

Gitは分散型バージョン管理システム

ローカルリポジトリでコミットし放題

プロジェクトをcloneして俺俺プロジェクト

今からSubversionするならGitの方がいいよ!

参考サイト

Git - Fast Version Control System

http://git-scm.com/

バージョン管理システム - Wikipedia

http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E7%AE%A1%E7%90%86%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0

Git - Wikipedia

http://ja.wikipedia.org/wiki/Git

分散バージョン管理Git/Mercurial/Bazaar徹底比較 (1/5) - @IT

http://www.atmarkit.co.jp/fjava/rensai4/devtool03/devtool03_1.html

かWiki - Git/分散レポジトリって何が嬉しいの

http://b4.x0.com/hiki/?Git%2F%CA%AC%BB%B6%A5%EC%A5%DD%A5%B8%A5%C8%A5%EA%A4%C3%A4%C6%B2%BF%A4%AC%B4%F2%A4%B7%A4%A4%A4%CE

はじめてのgit | IDEA*IDEA

http://www.ideaxidea.com/archives/2008/04/git.html

git チュートリアル (バージョン 1.5.1 以降用)

http://www8.atwiki.jp/git_jp/pub/Documentation.ja/tutorial.html

ご静聴ありがとうございました