Gitドリル 入門編(演習)

31
Gitドリル 入門編(演習) 2012/3/17 @irof Git 初心者用Boot Camp(のようなもの?

Transcript of Gitドリル 入門編(演習)

Gitドリル入門編(演習)

2012/3/17 @irofGit 初心者用Boot Camp(のようなもの?

なにこれ

2012/03/17 に行った Git初心者BootCamp の演習です。

コミットグラフを頭で描ければ勝ちらしいので、「お題のコミットグラフを作っていこう」みたいな感じ。

最初のコミットを作る

git ____ git ___ _ git _______ -_ 'Aのコミット'

コミットを続ける

git ___ _ git _______ -_ 'Bのコミット'

ブランチを作る

git ________ -_ topicC git _______ -_ 'Cのコミット'

ブランチを伸ばす

git ________ ______ git ______ -_ '_のコミット'

適当にブランチを生やす

git checkout -b ______ ________ git commit -m'Fのコミット'

マージしてみる

git checkout ______ git _____ ______

コミットを移動する

git ________ ______ git ______ ______

コミットを取り消す

git ________ ______ git _____ --____ ______

歴史の一本化

Fast-forward Merge

コミットをまとめる

おつかれさまでした

どこが入門やねん。

解答例は gist に上げてます。

https://gist.github.com/2056720

最後の I, J は git rebase -i とか…

(ちょっと休憩)

Gitドリルリモート編

2012/3/17 @irofGit 初心者用Boot Camp(のようなもの?

Gitにおけるリモート

別のリポジトリへの参照

いくつでも定義できる

リモート(遠隔)である必要はない

クローンの作成

既にリポジトリがある場合。

リモートにリポジトリがあり、ローカルに何も無い時はここから始める。

git clone [email protected]:irof/sandbox.git

更新の通知

リモートの名前とか送りつけるブランチとか指定しても。

git push

git push origin master

更新の取り込み(1)

リモートリポジトリからとってくる。

とってきたらマージしなきゃいけない。

git fetch

git merge origin/master

更新の取り込み(2)

リモートリポジトリからとってきてマージする。

やってることは fetch と merge なので、通常はこれ使うと思う。

git pull

リモートの操作

リモートリポジトリを追加する。

.git/config に remote セクションが追加される。

別に手で触っても良い。

git remote add origin アドレス

演習

今回は画像無し

リモートリポジトリ作成

GitHubに作る手元に作る

どっちでも。手元で作るなら bare で。

ローカルリポジトリ作成

clone するinit する

どっちでも。initだと自分でremote addする。

ローカルリポジトリで変更

なんか変更する

適当にコミットする

プッシュする

T/O

ローカルリポジトリを増やす

cloneで。

「他の開発者」のイメージ。

増やした方で変更してプッシュする

T/O

変更を取り込む

pullする

fetchしてmergeする

どっちでも。

競合したら、ファイト。

おつかれさまでした

後はだいたい繰り返し。

雑い?すまん。