スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。



Gitについて読み終えました...

前に紹介したGitについてを解説しているサイトをほぼ読み終えました。
(Android携帯買ったので数日放置していましたw)

http://git-scm.com/book/ja

本で言うとコチラになります。

Pro GitPro Git
(2009/08/17)
Scott Chacon

商品詳細を見る


全9章あるうち,8章のSubVersionに関するところまで読みました。
理解度は...80%ってところでしょうか。

SubVersionユーザから見て基本的な変更部分は...

・リポジトリ管理がリモートとローカルで行える。
・Gitのコミットはローカルリポジトリへのコミットになる。
 リモートリポジトリへ(SubVersionでいう)コミットするときはプッシュになる。

・Gitではローカルでコンフリクト(衝突)の解決を行わないといけない。
 SubVersionでは変更したファイルがサーバ上で既に変更されていて,
 変更箇所がぶつかるときにコンフリクトを起こしていたが,
 Gitではリモートリポジトリの対象ブランチが変更されているときに
 コンフリクトを起こす。(ファイルが衝突していなくても...)
 コンフリクトを起こしたときはプルコマンドを実行すれば,
 自動でマージしてローカルリポジトリをプッシュできる状態にしてくれる。
 もし変更箇所がバッティングしているときは,自前で解決してからプッシュすることになる。

・SubVersionでブランチを作ると,サーバ上で全ファイルをコピーしていた。
 Gitでは親ポインタを持つデータを作るだけなので,とても高速・計量にブランチを作成することができる。
 (これについてはサイトの初めの部分を読んでみるとわかると思います)

とまぁ凄く簡単ですが,こんなところでしょうか?
Gitサーバを立ち上げることについてや,gitosisを使った自動化の説明などもあります。
Gitについての全般を知るうえで役立つ本だったと思います。

Gitは汎用的にできているので,各開発者のローカルリポジトリに対してプッシュやプルができるので,
運用モデルを会社,またはプロジェクトごとに明確にしていく必要がありそうです。
(5章で詳しく書かれています)

ローカルリポジトリを持つことのよさとして「サーバに接続できないときにもコミットできる」こともありますが,
ローカルリポジトリ内でブランチを作ることができるということが良い点ではないでしょうか?

サイトにも書かれていますが,一つの修正や変更に対して,自分の中で複数の案があった場合に,
それに対応するブランチを複数作成し,テストすることができるということ。
そして実際に採用するブランチのみを,本流にマージして,サーバにプッシュすることができるということです。

SubVersionで,これを実行しようものなら,違うディレクトリに変更するリポジトリを複数コピーする必要があったので,ファイルサイズや,コピーにかかる時間が無駄でした。


Gitのリベースについては,Gitならではの考え方だと思います。
そのためか,どういうことなのかを理解しても,どういうときに使うといいのかが,
まだ明確につかめていません。

その他の不明点や,第9章(これはコアな話なので読むタイミングは任せると章頭で書かれている)は,
今後,使用しながら読んでいこうかと思っています。
関連記事
スポンサーサイト



コメントの投稿

非公開コメント

アクセス
あなたは
キーワード
カテゴリー
最近の記事
リンク
月別アーカイブ
ブロとも申請フォーム

この人とブロともになる

WEB検索
Google

RSSフィード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。