「Gitによるバージョン管理」の執筆者によるGit勉強会か講演会 に参加してきた #gitbookjp
- 「Gitによるバージョン管理」の執筆者によるGit勉強会か講演会 : ATND
- 2012/02/28 「Gitによるバージョン管理」の執筆者によるGit勉強会か講演会 #gitbookjp - Togetter
Gitに関してはさほど習熟・実践度合があるわけではないのですが、書籍の著者自らによるイベント開催という事で参加してきました。
- 作者: 岩松信洋,上川純一,まえだこうへい,小川伸一郎
- 出版社/メーカー: オーム社
- 発売日: 2011/10/25
- メディア: 単行本(ソフトカバー)
- 購入: 6人 クリック: 239回
- この商品を含むブログ (27件) を見る
会場は株式会社サイバーエージェント17Fセミナールーム。イベントページを見る限りだと定員80人に対し170人以上という盛況だったのですが、蓋を開けてみると…な感じでした。(^_^;) 開始当初で50人居ない位だったかな?
予定通りに19:30開始、岩松さんによる説明及びそしてGit最新情報についての諸解説へ。
- お約束
- gitは『じっと』ではなく『ぎっと』です。
- はじめに
- 御参加ありがとうございます、
- しかし何を話していいものやら。
- …みなさん、今日は何しに来られたんですか?
- 特に何も要求が無かったので適当に話します。
- Git本
- 『Gitによるバージョン管理』
- Git関連本は4冊目。
- 他の本との差別化が難しい。
- Gitを知らない人に、『これ、明日までに読んでおいて』と渡したら理解出来る本に。
- おかげさまで人気あるようです。
- ありがとうございます。
- 諸注意
- 残念ながら今日の話を聞いてもGitは理解デキマセン。、
- 『Gitによるバージョン管理』を読めば理解出来る!
- 勉強会期待してる人は別途相談して。
- これだけ参加者がいるので色んな意見を聞きたい。
著者紹介
- 岩松 信洋さん(TwitterID:@iwamatsu)
なお、著者4人(岩松 信洋さん/小川 伸一郎さん/前田 耕平さん/上川 純一さん)のうち、前田さん、上川さんは都合により欠席となりました。
Git最新っぽい情報
- 岩松 信洋さん(TwitterID:@iwamatsu)
- 最新はv1.7.9.2(2012/2/22リリース)
- v1.7.10 coming soon?
- git clone --single-branch
- git push --prune
- 次期mysysgitでUTF8対応らしい
- ※1.7.0から個人的に重要と思ったものをピックアップ。
- git am --keep-cr
- amするときにCRを維持。
- git commit -S
- コミットにPGP/GPG署名が出来るようになった。
- git cherry-pick start…end
- git cherry-pickコマンドで範囲指定可能に。
- git branch --edit-description
- ブランチに説明を追加出来るようになった。
- .git/configに設定される。
- git cherry-pick, git revertで --strategyが使えるようになった。
- git clean -e
- 指定したファイルを無視してcleanする。
- .git/info/excludeファイルも参照。
- git checkout --detach
- 指定したrefsをチェックアウト出来る。無名ブランチ厨御用達。
- git init --separate gitdir
- .gitを分離する。
- git stash save -u --include--unstacked
- unstackedファイルもstashする。
- git rebase -i execサポート
- git reset --keep
- -git reset --merge
- 違いが微妙(笑)詳しくはスライド資料の表を参照。
- gnu patchがgit形式をサポート(Not yet released)。
- git am --keep-cr
- ここを読むと面白い。(浜野さんが更新している:英語)
ツールの話
- 岩松 信洋さん(TwitterID:@iwamatsu)
tig
- コンソールから使える。
- CUI な Git ブラウザ tig を入れてみた - Born Too Late
- VImに近い操作感で津明ける。
- ビューアとしては使いやすい。
- Gitインタフェースとしては微妙(表示にリフレッシュ操作が必要だったり)
TortoiseGit, GitX, Gity, Gitbox
stgit/guilt
- パッチをスタックとして考えるツール
- パッチセットを管理したい人向け。
SubversionからGitへ移行するときの問題について簡単に語る
- 小川 伸一郎さん / Tokyu.rb (TwitterID:@conceal_rs)
- 最近本書きました。良ければ買ってやってください。
- Gitによるバージョン管理
- 作者: 岩松信洋,上川純一,まえだこうへい,小川伸一郎
- 出版社/メーカー: オーム社
- 発売日: 2011/10/25
- メディア: 単行本(ソフトカバー)
- 購入: 6人 クリック: 239回
- この商品を含むブログ (27件) を見る
-
- Ruby on Rails3で作るjpmobileによるモバイルサイト
-Ruby on Rails 3で作る-jpmobileによるモバイルサイト構築
- 作者: 小川伸一郎
- 出版社/メーカー: ワークスコーポレーション
- 発売日: 2012/02/21
- メディア: 単行本(ソフトカバー)
- 購入: 2人 クリック: 234回
- この商品を含むブログ (4件) を見る
-
- Ruby公式資格教科書
- Subversionが多いはず。
- 政治的理由により、とか
- 厨の話は岩松さんに
- リビジョン番号
- コミットに紐付けられた連番
- 連番なので順序を把握しやすい
- そもそも順番って何?(とGitの人は言う)
- (リビジョン番号解説)
- 結局のところ、直列っぽくなる
- Gitでリビジョンは?
- なぜ必要?
- コミットを特定したい
- Gitならコミットハッシュ値で
- 順番が分からなくて困る
- なぜ順番が必要?
- コミットを特定したい
- ちゃんと動いてたコミットを知りたい
- それってgit rebase使えば出来るよ、と言われる
- Gitでコミット順?
- がなぜ必要?
- だってこんな状態になったら、大変じゃないですか
- 何が大変か
- バグの特定しようにも…
- :
- Gitが難しいという風評被害が…
- Gitは難しい
- 概念的には難しくないはず
- リベースとマージを使い分ける
- うまく使い分けられればいいはずだが
- 一番わかりにくいのがリベースとマージ
- リベースとマージ
- どっちを使えば良いか
- 状況によりけり
- Subversion的に考える
- Svnでトランクにマージするとき
- リベースする
- リベース?マージ?
- 全てはリベースに通ず
- 大概はそれで良いはず
- git svnコマンド
- svn:externals
- svn:ignore
- .gitignore
- マージ
- どっちを使えば良いか
- まとめ
- とりあえず本買って読めばなんとかなる
- リビジョン番号はオワコン
- まずはリベースしようぜ
- まずはgit svnから
最後に質疑応答を幾つか。
んで、近いうちに、Gitのハンズオン的なものを行う『道場』的なものが開催されるらしいですよ。(※3月末辺りに。)岩松さんと小川さんの掛け合いで明らかにされておりました。
git bundleについて語ってみる
- 岩松 信洋さん(TwitterID:@iwamatsu)
- Gitはスニーカーネットワークをサポートしている。使うには?
- git bundleを使う。
- bundle:束、束状構造
- コミットの幾つかを束ねておきたい。
- [git bundle create]コマンドで作成出来る。
- git bundleを使う。
- 作成されたイメージをUSBメモリなどに入れて移動!
- bundleイメージ適用(の前にイメージ検証)
- git bundle verify
- 検証イメージ
- 検証エラーになるパターン
- bundleイメージの取り込み
- git pull/git fetch/git remote等で実行可能
- リファレンスを指定する必要がある
- git bundle list-heads
- イメージ内にあるリファレンスを出力。
- git bundle list-heads
-
- bundleファイルはリモートリポジトリとして扱える…git remoteを使った方が良いらしい。
- git pullでの実施方法
- git fetchでの実施方法
- git remoteでの実施方法
- その他のコマンド
- git bundle unbundle:Gitオブジェクトをgit index-packを使って.git/objects以下に展開。Gitオブジェクト厨御用達ツール。
- bundleファイルはリモートリポジトリとして扱える…git remoteを使った方が良いらしい。
-
- タグやブランチはどうするの?
- bundle作成時に取り込みたいタグやブランチを指定
- 全てのタグは--tagsを指定
- 全てのブランチは--branchを指定
- 全てのリファレンスを取り込みたい場合は--allを指定
- タグやブランチはどうするの?
-
- 似たような機能:git format-patchはどうなの?
-
- けど、使う事なんて無いよね…?
- バックアップとして使えます!(キリッ)
- リポジトリのバックアップ機能:bundle開始位置を指定しない場合、一番最初のコミットからデータを取得出来る。
- バックアップソリューションとして使える。
- けど、使う事なんて無いよね…?
最後に再度。質疑応答。
今後について
- Git勉強会?
- Gitハンズオン?
- Gitコードリーディング?
う〜む、こうして聞くとGitはやはり難解なイメージですなぁ…(笑)難解というか、出来る事が多過ぎる?少しずつ覚えて行けばあんま気にならないところなのだろうか…。
※スライド資料、その他関連リンク等は情報は随時追記して行きます。
その他関連サイト: