Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git Introduction

Git Introduction

Ken Wagatsuma

March 26, 2014
Tweet

More Decks by Ken Wagatsuma

Other Decks in Programming

Transcript

  1. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  2. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  3. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  4. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  5. sample.app 2014.03.20 12:12 “アプリ作成” sample.app 2014.03.20 12:21 “reload メソッドを作成した” sample.app

    2014.03.20 12:45 “現在最高の機能を実装中” 履歴のポイントを作る。 =「コミット」 =「コミット」 =「コミット」 =「コミット」 例えば、 「sample.app」で Rails のアプリを作成する とします。 新しい機能を付け加える毎に “セーブポイント”を加えたい のですが、そのポイントを 「コミット」と呼びます
  6. sample.app 2014.03.20 12:12 “アプリ作成” sample.app 2014.03.20 12:21 “reload メソッドを作成した” sample.app

    2014.03.20 12:45 “現在最高の機能を実装中” =「コミット」 左の図の「•」の部分。 変更した部分毎に 「セーブポイント」を作成。 いつでもそのセーブポイントに 戻れるようにする。
  7. コミットの際に -m オプションで自由に コメントを追加する事が出来ます $ git add sample.app $ git

    commit -m “コメント機能を追加” [master 5419039] Initial Commit 52 files changed, 702 insertions(+) create mode 100644 sample.app/.gitignore create mode 100644 sample.app/README.rdoc create mode 100644 sample.app/Rakefile create mode 100644 sample.app/app/assets/images/.keep create mode 100644 sample.app/app/assets/javascripts/application.js create mode 100644 sample.app/app/assets/stylesheets/application.css ...
  8. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  9. 履歴を見てみよう。先ほど作ったコミットが 見られるはずですね。 上から順に   「コミットハッシュ ( コミットを示す名札のようなモノ )」   「コミットした人」

      「コミットした日時」 コミットした内容 が書いてあります。 $ git log commit 5419039fbaaac5834b52e5993346a231d716557f Author: KENJU <[email protected]> Date: Tue Mar 25 21:41:38 2014 +0900 Initial Commit
  10. より履歴を詳しく見るにはこのコマンドです。 $ git config --global color.ui true コミットで変わったところをカラーで表示 ( ずっと有効

    ) $ git log -p commit 5419039fbaaac5834b52e5993346a231d716557f Author: KENJU <[email protected]> Date: Tue Mar 25 21:41:38 2014 +0900 Initial Commit diff --git a/sample.app/.gitignore b/sample.app/.gitignore new file mode 100644 index 0000000..6a502e9 --- /dev/null +++ b/sample.app/.gitignore @@ -0,0 +1,16 @@ ...
  11. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  12. ファイルに変更があった時 $ git status # On branch master # Your

    branch is ahead of 'origin/master' by 1 commit. # (use "git push" to publish your local commits) # # Changes not staged for commit: # (use "git add/rm <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: ../.DS_Store # modified: ../books_picture_app/Gemfile # deleted: ../first_app/.gitignore # deleted: ../first_app/Gemfile ...
  13. Git の使い方 ・git インストール確認 ・git 設定確認 ・git 初期化 ・git コミットの仕方

    ・git ログ ( 履歴 ) の見方 ・git ステータスの見方 ・git 歴史の巻き戻し方
  14. 過去のコミットに巻き戻すには $git checkout [ コミットハッシュ ] 「コミットハッシュ」は $git log で調べよう

    ! $ git checkout edbc9a Note: checking out ‘edbc9a’ You are in ‘detached HEAD’ state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b new_branch_name HEAD is now at edbc9a... Add new awesome function
  15. 巻き戻した歴史を巻き戻したい時 ($git checkout をやり直す ) $ git checkout master Previous

    HEAD position was edbc9a... Add new awesome function Switched to branch ‘master’