Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

はじめようGit

22 266 vues

Publié le

gitの社内勉強会の資料です。
Subversionユーザを前提としています。

他、資料となったウェブページのリンクなどまとめています。
http://www.techscore.com/blog/?p=3390

Publié dans : Technologie
  • Soyez le premier à commenter

はじめようGit

  1. 1. はじめよう For Subversionユーザ 2013/10/24 シナジーマーケティング(株) 河野 健太朗
  2. 2. アジェンダ 1.なんで Git ? 2.Git の基本 3.基本のサイクル 4.ブランチ/タグ 5.ワークフロー
  3. 3. なんで ?
  4. 4. メリット1 自分のタイミングで コミットできる!
  5. 5. なんで? • 分散型なので、コミットし • ても、すぐには他の人に影 響を与えないから SVNだと気を遣いますよ ね?
  6. 6. メリット2 コードレビューが やりやすくなる!
  7. 7. なんで? • コミット頻度が適切になれ • ば、コードレビューの負担 も大きくならない SVNだと、まとまってガツ ンとコミットすることあり ますよね?
  8. 8. メリット3 継続的○○が、 やりやすくなる!?
  9. 9. なんで? • ブランチ使いやすいから、 ブランチごとにテスト回し たりとかできる???
  10. 10. でも、git は 難しいよね…?
  11. 11. でも、git は というか、 難しいよね…? 運用の問題では?
  12. 12. そうですね!!!
  13. 13. でも、SVNだと… • コミットに気を使う… • ブランチ使いにくい… • マージがしんどい… (´・ω・`)ショボーン
  14. 14. ところで… 世の中の流れ
  15. 15. リポジトリサービスの状況 • GitHub 2008年4月 最初からgit • GoogleCode 2011年7月 gitに対応 • Bitbucket o o o 2011年10月 gitに対応
  16. 16. git 流行ってます
  17. 17. SVN使って良いのは 昭和生まれまで だよね~ ( *´艸`)クスクス
  18. 18. 新卒に煽られる日が くるかもしれない…?
  19. 19. と、言うわけで
  20. 20. はじめよう!!!
  21. 21. アジェンダ 1.なんで Git ? 2.Git の基本 3.基本のサイクル 4.ブランチ/タグ 5.ワークフロー
  22. 22. の基本
  23. 23. gitの基本 1.分散型のリポジトリ 2.3つの領域 3.コミットグラフ
  24. 24. 1. 分散型リポジトリ
  25. 25. SVNは集中型 ワーキングコピー リポジトリ add, delete checkout commit update
  26. 26. SVNは集中型 ワーキングコピー リポジトリ checkout この部分が自分のモノ commit update
  27. 27. 知ってるよ! それくらい!
  28. 28. gitは分散型 リポジトリ ワーキングコピー リポジトリ checkout commit merge clone push fetch add, rm
  29. 29. gitは分散型 リポジトリ ワーキングコピー リポジトリ clone push fetch この部分が自分のモノ
  30. 30. 分散型のメリット • ローカルにリポジトリがあるの で o オフラインで作業可能 o コミットは他のリポジトリに 影響しない • バックアップが簡単
  31. 31. 分散型のデメリット • ローカルにリポジトリがあるの で o コミットは他のリポジトリに 影響しない ↓ o 共有リポジトリと同期が必要
  32. 32. gitは分散型 リポジトリ ワーキングコピー リポジトリ add, rm 同期が必要
  33. 33. 2. 3つの領域
  34. 34. 3つの領域 Gitには3つの領域があります • ワーキングディレクトリ • インデックス • リポジトリ
  35. 35. 3つの領域 ワーキングディレクトリ 作業するとこ インデックス ? リポジトリ 履歴のとこ
  36. 36. 3つの領域 ワーキングディレクトリ インデックス リポジトリ コミット対象を管理するとこ
  37. 37. コミット前に コミット対象を 整理できます
  38. 38. 変更しただけでは コミット対象に ならない
  39. 39. えっ?
  40. 40. コミット対象は インデックスに追加 しないといけない
  41. 41. えっ?
  42. 42. えっ? Subversionだと やってくれるよ!
  43. 43. そうですね!!!
  44. 44. gitにもあります 楽する方法 後ほど…
  45. 45. 3. コミットグラフ
  46. 46. コミットグラフ コミットがつながってできる
  47. 47. コミットグラフ コミットがつながってできる コミット A
  48. 48. コミットグラフ コミットがつながってできる コミット コミット A B
  49. 49. コミットグラフ コミットがつながってできる コミット コミット コミット A B C
  50. 50. 各コミットは、 親のコミットを 参照している
  51. 51. 履歴の順番は リビジョン番号を 見ても分かりません
  52. 52. えっ?
  53. 53. 最初のコミットは? コミット コミット コミット d43a39 0b04a90 8c862c0
  54. 54. 最初のコミットは? 一番右でした コミット コミット コミット C B A d43a39 0b04a90 8c862c0
  55. 55. コミットグラフ 大事ですね
  56. 56. どうやって 見るの?
  57. 57. GUIのツールとか コマンドで!
  58. 58. ちょっと休憩 質問タイム
  59. 59. アジェンダ 1.なんで Git ? 2.Git の基本 3.基本のサイクル 4.ブランチ/タグ 5.ワークフロー
  60. 60. 基本のサイクル
  61. 61. 上:git 下:SVN
  62. 62. リポジトリのコピー git clone リポジトリのチェックアウト svn checkout
  63. 63. リポジトリの更新 git pull ワーキングコピーの更新 svn update
  64. 64. 編集作業(一部) git add, git rm 編集作業(一部) svn add, svn delete
  65. 65. コミット対象にする git add (ステージングという)
  66. 66. コミット対象から外す git reset
  67. 67. コミット git commit コミット svn commit ?
  68. 68. 他リポジトリに反映 git push コミット svn commit ?
  69. 69. git commit + git push svn commit
  70. 70. 詳細は Git Cheat Sheet http://www.textdrop.net/wp-content/uploads/git-cheatsheet-ja.pdf
  71. 71. ちょっと待て! 楽する方法は?
  72. 72. そうでした!!!
  73. 73. git commit -a
  74. 74. ステージングを 省略して コミットできる!
  75. 75. 積極的に 使って良いと 私は思います
  76. 76. 良くない git add . git commit 良い git commit -a
  77. 77. やめよう git add . ステージングをめんどくさがって、 git add . を実行すると、不要なファイルがス テージングされてしまうこともある。 git commit –a はトラッキングされてるものだけ、コ ミット対象。(svn commit と同等)
  78. 78. アジェンダ 1.なんで Git ? 2.Git の基本 3.基本のサイクル 4.ブランチ/タグ 5.ワークフロー
  79. 79. ブランチ/タグ
  80. 80. 復習 コミットはつながっていく コミット コミット コミット A B C
  81. 81. masterブランチ デフォルトのブランチ A master
  82. 82. masterブランチ デフォルトのブランチ A B master
  83. 83. masterブランチ デフォルトのブランチ A B C master
  84. 84. ブランチは コミットへの ポインタ
  85. 85. ブランチ作成 master から topic を作成 topic A B C master
  86. 86. ポインタが増えただけ
  87. 87. ブランチで作業 topic ブランチでコミット topic B C master D
  88. 88. 枝分かれしない!
  89. 89. ブランチで作業 master でコミット topic B C D E master
  90. 90. 各ブランチで コミットされて 枝分かれする
  91. 91. ブランチで作業 それぞれ進む topic D G H E F I master
  92. 92. ブランチのマージ master で topic をマージ topic G H F I J master
  93. 93. topicはそのまま
  94. 94. ブランチで作業 topic でまたコミット topic G H K F I J master
  95. 95. ブランチは コミットへの ポインタ 大事なことなので2回言いました
  96. 96. HEAD topic にいるとき HEAD topic D G H E F I master
  97. 97. HEAD master にいるとき topic D G H E F I master HEAD
  98. 98. HEADは動く
  99. 99. タグもポインタ コミットJにタグ付け topic G H K F I J master v1
  100. 100. まだ、 よくわかんない…
  101. 101. そうですね!!!
  102. 102. こわくないgit を見ましょう http://www.slideshare.net/kotas/git-15276118
  103. 103. こわくないgit を見ましょう http://www.slideshare.net/kotas/git-15276118 すごく良くわかる!
  104. 104. アジェンダ 1.なんで Git ? 2.Git の基本 3.基本のサイクル 4.ブランチ/タグ 5.ワークフロー
  105. 105. ワークフロー
  106. 106. いろいろあるよ • git flow • github flow • git daily とか色々
  107. 107. 大事なこと • master は安定版 • 開発はトピックブランチ • トピックブランチの 生存期間は短め
  108. 108. ブランチを 積極的に使う
  109. 109. でも、 マージは不安…
  110. 110. そうですね!!!
  111. 111. 3-way マージ 共通の親も使う W,X,Yを比較 W X Y Z
  112. 112. 賢いらしいです…
  113. 113. まとめ • gitとSVN違いますね • ローカルリポジトリ最高 • ブランチはポインタ • masterは安定版
  114. 114. 今日話せてないこと • git の設定 • push/pull • 履歴のこと • サブコマンド 奥が深いです…
  115. 115. 練習できます Code School – Try Git http://try.github.io//levels/1/challenges/1
  116. 116. 参考文献 Pro Git (日本語) http://git-scm.com/book/ja/
  117. 117. おわり ありがとうございました
  118. 118. 技術情報サイトやってます TECHSCORE http://www.techscore.com/ リファレンス系多い TECHSCORE BLOG http://www.techscore.com/blog/ それぞれ自由に書いています

×