Gitとちょっと仲良くなるために覚えたことまとめ

44
Gitとちょっと仲良くなるために 覚えたことまとめ 2013/09/02 @beta_chelsea of the beginner, by the beginner, for the beginner

Transcript of Gitとちょっと仲良くなるために覚えたことまとめ

Gitとちょっと仲良くなるために覚えたことまとめ

2013/09/02 @beta_chelsea

of the beginner, by the beginner, for the beginner

Git = バージョン管理システム

こういうことしないためのもの!!

20130828_file1.html20130828_file2.html20130829_file1.html

(́・ω・`)

スッキリまとまってたほうがうれしかろ?

file.html

(*́・▽・`*)

その他諸々etc猫も杓子もGitな感じあります(個人感想)

バージョン管理システムとして今HOTなようだ

GitHub Bitbucket

Webにたくさん参考資料あります!!

サルでもわかるGit入門http://www.backlog.jp/git-guide/

こわくないgithttp://www.slideshare.net/kotas/git-15276118

いつやるの?Git入門http://www.slideshare.net/matsukaz/git-17499005

Git初心者が見るべきサイトまとめ(上記3つ含む)http://matome.naver.jp/odai/2136491451473222801

Webにたくさん参考資料あります!!

サルでもわかるGit入門http://www.backlog.jp/git-guide/

こわくないgithttp://www.slideshare.net/kotas/git-15276118

いつやるの?Git入門http://www.slideshare.net/matsukaz/git-17499005

Git初心者が見るべきサイトまとめ(上記3つ含む)http://matome.naver.jp/odai/2136491451473222801

バージョン管理が未経験でもOK。すごく丁寧でわかりやすい何がなんだかさっぱりだったら入門編から

それでも分からないときがある!!

Git三重の壁(オレオレ定義)

黒い画面の壁

commit, branchの壁

pull requestの壁

Git三重の壁(オレオレ定義)

黒い画面の壁

commit, branchの壁

pull requestの壁

GUI使う or コマンドに慣れる(cd / ls (dir) とか)

(自分も修行中です)

Gitを分からないなりに使ってみる

Git三重の壁(オレオレ定義)

黒い画面の壁

commit, branchの壁

pull requestの壁

GUI使う or コマンドに慣れる(cd / ls (dir) とか)

(自分も修行中です)

Gitを分からないなりに使ってみる

自分なりにそれっぽくなってきた作業フロー

$git status$git checkout -b fix_color(ファイルをいろいろ修正...)

  ( `・ω・)   _/_ミつ/‾‾‾/    \/___/‾

  カタカタ

  ( `・ω・)   _/_ミつ/‾‾‾/    \/___/‾

  カタカタ $git diff css/main.css(修正したファイルの変更点をチェック)

  カタカタ

$git add css/main.css$git commit -m “コミットコメント”(修正したファイルをコミット)

  ( `・ω・)   _/_ミつ/‾‾‾/    \/___/‾   カタカタ

  カタカタ  カタカタ

$git checkout master$git branch$git merge fix_color(ブランチ名を再チェックしてマージ)

注:エラー吐いてるのはちょっとスルーで

  ( `・ω・)   _/_ミつ/‾‾‾/    \/___/‾   カタカタ

  カタカタ  カタカタ

  カタカタ

$git status$git commit -m “hogehogeを修正”$git status(ブランチ統合をして確認)あとはpushとかpullとかする。

  (∩ `・ω・) _/_ミつ/‾‾‾/    \/___/‾

ターンッ

何をしているのか?(masterブランチにいる状態で)$git checkout -b fix_color$git commit -m “背景黒にしたよ”$git checkout master$git merge fix_color

master

fix_color

一旦 コピーを作って、そっちを納得いくまで修正してからメインのブランチ(master)に統合している

何をしているのか?(masterブランチにいる状態で)$git checkout -b fix_color$git commit -m “背景黒にしたよ”$git checkout master$git merge fix_color

master

fix_color

一旦 コピーを作って、そっちを納得いくまで修正してからメインのブランチ(master)に統合している

何をしているのか?(masterブランチにいる状態で)$git checkout -b fix_color$git commit -m “背景黒にしたよ”$git checkout master$git merge fix_color

master

fix_color

一旦 コピーを作って、そっちを納得いくまで修正してからメインのブランチ(master)に統合している

何をしているのか?(masterブランチにいる状態で)$git checkout -b fix_color$git commit -m “背景黒にしたよ”$git checkout master$git merge fix_color

master

fix_color

一旦 コピーを作って、そっちを納得いくまで修正してからメインのブランチ(master)に統合している

何をしているのか?(masterブランチにいる状態で)$git checkout -b fix_color$git commit -m “背景黒にしたよ”$git checkout master$git merge fix_color

master

fix_color

一旦 コピーを作って、そっちを納得いくまで修正してからメインのブランチ(master)に統合している

ブランチ超便利

master

fix_hoge

$git checkout -b fix_hoge(fix_hogeをとりあえず色々変更)$git checkout master$git branch -d fix_hoge //ポイ!

こうしておくと、適当なテスト用変更もすぐポイできたりとか

ブランチ超便利

master

fix_hoge

$git checkout -b fix_hoge(fix_hogeをとりあえず色々変更)$git checkout master$git branch -d fix_hoge //ポイ!

こうしておくと、適当なテスト用変更もすぐポイできたりとか

ブランチ超便利

master

fix_hoge途中の変更をおいておいて新しくブランチをつくってそっちで急な変更を修正したりできる

$git checkout -b fix_hoge(色々変更中...)$git checkout master$git checkout -b fix_warning(緊急修正する)$git checkout master$git merge fix_warning

ブランチ超便利

master

fix_hoge途中の変更をおいておいて新しくブランチをつくってそっちで急な変更を修正したりできる

$git checkout -b fix_hoge(色々変更中...)$git checkout master$git checkout -b fix_warning(緊急修正する)$git checkout master$git merge fix_warning

ブランチ超便利

master

fix_hoge途中の変更をおいておいて新しくブランチをつくってそっちで急な変更を修正したりできる

$git checkout -b fix_hoge(色々変更中...)$git checkout master$git checkout -b fix_warning(緊急修正する)$git checkout master$git merge fix_warning

fix_warning

ブランチ超便利

master

fix_hoge途中の変更をおいておいて新しくブランチをつくってそっちで急な変更を修正したりできる

$git checkout -b fix_hoge(色々変更中...)$git checkout master$git checkout -b fix_warning(緊急修正する)$git checkout master$git merge fix_warning

fix_warning

ブランチ超便利

master

fix_hoge途中の変更をおいておいて新しくブランチをつくってそっちで急な変更を修正したりできる

$git checkout -b fix_hoge(色々変更中...)$git checkout master$git checkout -b fix_warning(緊急修正する)$git checkout master$git merge fix_warning

fix_warning

リモートリポジトリ

origin ローカル(master)

pull

push

$git pull //変更をDLしてくる$git push origin master //変更をアップする

$git push origin master$git push test master

リモートリポジトリ

originローカル(master)

push

test

push

$git remote -vリモートリポジトリの詳細が確認できる

リモートリポジトリ

origin

test

origin [email protected]...(fetch)origin [email protected]...(push)

test https://github.com/...(fetch)test https://github.com/...(push)

個人的にこれが超大事だと思うコマンド紹介

  (∩ `・ω・) _/_ミつ/‾‾‾/    \/___/‾

  カタカタカタターンッ

1. とにかく確認!!

$git branch今どんなブランチがあるかチェック

$git status現在のブランチの状態を確認する

$git remote -voriginの元とかをチェックしたいとき

$git logコミットログを確認

$git diff hogehoge.htmlファイルの差分を確認

2. やり直せばどうということはない

$git checkout -- hoge.txthoge.txtを前回commit時の状態に戻す

$git reset --hard HEAD変更をなかったことにして前回commit時の状態に戻す

$git commit --amend -m “書き直しコメント”書き損じコメントを修正したいときついでにコミット忘れファイルとかの追加もできる

3. その他便利系

$cd -一個前のディレクトリに戻る(git関係なし)rootに移動してから作業ディレクトリに戻りたいときなどに重宝$cd ~  → $cd - で戻るとか

$git config --global color.ui auto色つける!!便利!

+α 注意したいこと!1. 無視ファイルを決める.gitignore便利なのでぜひ使いこなしたいところ

2. コミットコメント超大事あとから見直すときが来たら必要になります

3. 必要な修正だけ入れましょう綺麗なソースを心がけよう

やらかした例

不要なインデント良くない!!

気をつけよう要らない履歴 怪我のもと

(プルリク練習でrejectされた体験より一句)

✌(‘ω’✌ )三✌(‘ω’)✌三( ✌’ω’)✌

by @beta_chelsea

たのしいGitライフを!

(何か変なところとか指摘あったらぜひご指導ご鞭撻よろしくお願いします!!)