自己紹介
Name:           佐川 夫美雄                @albatrosary          http://ameblo.jp/sgw3a/Users Group:   Tokyo.R/html5j.org/jsug/...
今日はハンズオンですので実際にコマンド叩きます途中ミスってもそれはそれで、デモですので空気を呼んで心広い対応をお願いします
では、はじめます
初級編の目標・よく使う git コマンドを覚える・git の基本動作を身につける・1人 git でがんばれる(複数人 git はまた今度)
git の特徴・分散型バージョン管理システム・多くのオープンソースプロジェクトで使われている ← オープンソースを利用するときに git の知識を持っている方がよりよい・1人バージョン管理、チームでのバージョン管理など気軽にファイル管理できる
git のイメージ                                       Repositoryローカル                                                         Rep...
自分の Repositoryを壊しても  誰からも怒られない
git と svn の違いそれぞれのファイルの差分を個別に管理スナップショットとしてデータを管理
ちなみに
gitgithubgithub:E(github Enterprise)これ違うものです
git は 分散型バージョン管理システムgithub は git を使うためのハブgithub:E(github Enterprise) はgithub の イメージ(VMを含め)をローカル環境に置けるもの
世の中どのくらい git が気になっているかトレンドhttp://www.google.com/trends/explore#cat=0-5&q=Git%2C%20Subversion&cmpt=q
ようやく本題!!
git のインストールMAC だと既に入ってます。MacPortsからダウンロードWindows では下記 url からダウンロードします。msys版とcygwin版がありますが、msys版がおすすめ              http://c...
git の状態Working Tree:git 配下でユーザが作業する場所Index:リポジトリー登録する前の一時領域git はスナップショット(ファイルの固まり)として管理しているため Index というバケツを用意しているRepositor...
git の状態遷移git init  Working Tree                        Index                        Repository                     git add...
よく使うコマンドgit   config:git の設定をするgit   init:git の管理下にディレクトリを設定するgit   add:インデックスへのファイル登録git   commit:リポジトリへファイルを登録するgit   rm:...
ハンズオン
git 用の作業ディレクトリ作成$ mikdir temp$ cd temp
git 用に初期化$ git init                  .gitディレクトリ                   が作成されます
.git の中身を確認
git の設定$ git config --global user.name Fumio SAGAWA$ git config --global user.email fumio.sagawa@gmail.com
git configgit config --global:ユーザ(ログインユーザ)の git 設定git config --system:システム全体の git 設定git config:リポジトリの git 設定
ここまでが git を使う準備ですsample.txt というファイルを使って 実際にコマンドを叩いて行きます
git に管理させるファイルを生成$ echo hogehogehoge > sample.txt
git add の発行$ git add sample.txt                             git addでこれが                             生成されている
Working Tree, Index, Repositoryの違いを確認$ git diff$ git diff --cached$ git diff HEAD
HEAD についてHEAD:最新のコミットHEAD :HEADの一つ前HEAD :HEADの二つ前HEAD 2:HEAD と同じHEAD^: HEAD と同じHEAD^^: HEAD と同じ
ファイルの中身を変更し Working Tree, Index, Repositoryの違いを確認$ vi sample.txt
変更をすべて適用し commit$ git add sample.txt$ git commit -m first commit                              git commitでこれ                ...
Working Tree, Index, Repositoryの違いを確認
sample.txt を編集し git add$ git add sample.txt
Working Tree, Index, Repositoryの違いを確認
更に sample.txt を編集しWorking Tree, Index, Repositoryの違いを確認
git status は?$ git status
git log は?$ git log
git show は?$ git show
Woring Treeで定義された内容を         git commit し git status, git log, git show          を確認する
再度commit します               コマンドの               打ち間違え
git status は?$ git status
git log は?$ git log
git show は?$ git show
git からファイルを削除する$ git rm sample.txt
この状態でgit status, git log, git show, git diff             を確認する
git status は?$ git status
git log は?$ git log
git show は?$ git show
git diff は?$ git diff$ git diff --cached$ git diff HEAD
git から check out してみる$ git checkout HEAD sample.txt
次回(来週)は、複数人で利用するための方法をやります ・merge ・branch ・push / pull ・tag ・clone ・svn 連携
参考書
ご清聴ありがとう ございました
Priner of git
Priner of git
Upcoming SlideShare
Loading in …5
×

Priner of git

458 views
404 views

Published on

The purpose of this is the following: 1. Remember the basic git commands. 2. To understand the behavior of git. 3. One person will be able to git.

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • The purpose of this is the following:
    1. Remember the basic git commands.
    2. To understand the behavior of git.
    3. One person will be able to git.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total views
458
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Priner of git

  1. 1. 自己紹介
  2. 2. Name: 佐川 夫美雄 @albatrosary http://ameblo.jp/sgw3a/Users Group: Tokyo.R/html5j.org/jsug/mybatis-users /(ソフトウェア品質技術者のための)データ分析会
  3. 3. 今日はハンズオンですので実際にコマンド叩きます途中ミスってもそれはそれで、デモですので空気を呼んで心広い対応をお願いします
  4. 4. では、はじめます
  5. 5. 初級編の目標・よく使う git コマンドを覚える・git の基本動作を身につける・1人 git でがんばれる(複数人 git はまた今度)
  6. 6. git の特徴・分散型バージョン管理システム・多くのオープンソースプロジェクトで使われている ← オープンソースを利用するときに git の知識を持っている方がよりよい・1人バージョン管理、チームでのバージョン管理など気軽にファイル管理できる
  7. 7. git のイメージ Repositoryローカル Repository Origin Working Index Repository push/pull Tree add/reset commit/checkout Repository
  8. 8. 自分の Repositoryを壊しても 誰からも怒られない
  9. 9. git と svn の違いそれぞれのファイルの差分を個別に管理スナップショットとしてデータを管理
  10. 10. ちなみに
  11. 11. gitgithubgithub:E(github Enterprise)これ違うものです
  12. 12. git は 分散型バージョン管理システムgithub は git を使うためのハブgithub:E(github Enterprise) はgithub の イメージ(VMを含め)をローカル環境に置けるもの
  13. 13. 世の中どのくらい git が気になっているかトレンドhttp://www.google.com/trends/explore#cat=0-5&q=Git%2C%20Subversion&cmpt=q
  14. 14. ようやく本題!!
  15. 15. git のインストールMAC だと既に入ってます。MacPortsからダウンロードWindows では下記 url からダウンロードします。msys版とcygwin版がありますが、msys版がおすすめ http://code.google.com/p/msysgit/downloads/list
  16. 16. git の状態Working Tree:git 配下でユーザが作業する場所Index:リポジトリー登録する前の一時領域git はスナップショット(ファイルの固まり)として管理しているため Index というバケツを用意しているRepository:管理するファイルを蓄積するデータベース。CVS、Subversionでは全体として1つの管理だが、git ではローカルにもリポジトリーが存在する。この概念を頭に入れてファイル管理するのでかなり面倒 覚えると超ハッピー!!
  17. 17. git の状態遷移git init Working Tree Index Repository git add git commit Sample.txt Sample.txt Sample.txt Sample.txt Sample.txt git checkout git checkout demo.txt demo.txt demo.txt demo.txt demo.txt git reset git diff git diff --cached git diff HEAD
  18. 18. よく使うコマンドgit config:git の設定をするgit init:git の管理下にディレクトリを設定するgit add:インデックスへのファイル登録git commit:リポジトリへファイルを登録するgit rm:git からファイルを削除する。Working Treeから実態を削除git show:コミット情報を表示するgit status:リポジトリの状態を確認するgit checkout:変更前に移動したりもとに戻ったりするgit reset:変更をなかったことにするgit revert:コミットをなかったことにする(commit を作る)git diff:各ステージの差分を確認するgit log:コミットログの確認をする.gitignoreファイル:リポジトリの管理対象外にする定義ファイル.gitconfigファイル:git configコマンドで発行された設定情報を保持する
  19. 19. ハンズオン
  20. 20. git 用の作業ディレクトリ作成$ mikdir temp$ cd temp
  21. 21. git 用に初期化$ git init .gitディレクトリ が作成されます
  22. 22. .git の中身を確認
  23. 23. git の設定$ git config --global user.name Fumio SAGAWA$ git config --global user.email fumio.sagawa@gmail.com
  24. 24. git configgit config --global:ユーザ(ログインユーザ)の git 設定git config --system:システム全体の git 設定git config:リポジトリの git 設定
  25. 25. ここまでが git を使う準備ですsample.txt というファイルを使って 実際にコマンドを叩いて行きます
  26. 26. git に管理させるファイルを生成$ echo hogehogehoge > sample.txt
  27. 27. git add の発行$ git add sample.txt git addでこれが 生成されている
  28. 28. Working Tree, Index, Repositoryの違いを確認$ git diff$ git diff --cached$ git diff HEAD
  29. 29. HEAD についてHEAD:最新のコミットHEAD :HEADの一つ前HEAD :HEADの二つ前HEAD 2:HEAD と同じHEAD^: HEAD と同じHEAD^^: HEAD と同じ
  30. 30. ファイルの中身を変更し Working Tree, Index, Repositoryの違いを確認$ vi sample.txt
  31. 31. 変更をすべて適用し commit$ git add sample.txt$ git commit -m first commit git commitでこれ が生成されている
  32. 32. Working Tree, Index, Repositoryの違いを確認
  33. 33. sample.txt を編集し git add$ git add sample.txt
  34. 34. Working Tree, Index, Repositoryの違いを確認
  35. 35. 更に sample.txt を編集しWorking Tree, Index, Repositoryの違いを確認
  36. 36. git status は?$ git status
  37. 37. git log は?$ git log
  38. 38. git show は?$ git show
  39. 39. Woring Treeで定義された内容を git commit し git status, git log, git show を確認する
  40. 40. 再度commit します コマンドの 打ち間違え
  41. 41. git status は?$ git status
  42. 42. git log は?$ git log
  43. 43. git show は?$ git show
  44. 44. git からファイルを削除する$ git rm sample.txt
  45. 45. この状態でgit status, git log, git show, git diff を確認する
  46. 46. git status は?$ git status
  47. 47. git log は?$ git log
  48. 48. git show は?$ git show
  49. 49. git diff は?$ git diff$ git diff --cached$ git diff HEAD
  50. 50. git から check out してみる$ git checkout HEAD sample.txt
  51. 51. 次回(来週)は、複数人で利用するための方法をやります ・merge ・branch ・push / pull ・tag ・clone ・svn 連携
  52. 52. 参考書
  53. 53. ご清聴ありがとう ございました

×