11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GitAdvent Calendar 2016

Day 1

最初は better SVN でよい・・・ そんなふうに考えていた時期が俺にもありました

Posted at

前置き

git を覚えたい(覚えないといけない)けどよくわからないとか、慣れてなくて今の状態が把握できなくなったりリポジトリ破壊したりしてしまうという人に。

覚えてほしいこと

箇条書きですいません。

  • git はリモートリポジトリのデータをローカルに複製する
    • リモートの内容がローカルの作業ディレクトリに直接取り込まれるのではなく、作業ディレクトリとは 別に リモートの複製を持っている
    • また、例えば origin/master が指しているものはローカルに複製されたリモートリポジトリの master ブランチの内容であり、リモートリポジトリそのものではない。
      • 意味をわからず git pull を使っていると、わかりづらいし事故りやすい
  • git のブランチは「枝分かれしているそれぞれの枝」のことを指すのではなく、特定のコミットを指す単なる「ポインタ」である
    • HEAD は、現在作業中のローカルブランチへのポインタ
    • コミットすると、HEAD が指しているブランチのみが進む
  • 追跡ブランチという概念を覚える
    • これをちゃんと覚えるまで git pull は使わない
  • 普段使っているコマンドの「本当の意味」「省略しない形」を理解しておく、機械的に覚えない
    • 挙げていくときりが無いですが、例えば
      • git checkout -b branch_name origin/branch_namegit checkout branch_name の違いと使い分けかたとか
      • git push origin :branch_name でなぜリモートブランチが削除されるのかとか

この辺のことを理解すると、事故率が減るんじゃないかなと思います。

後書き

タイトルは、内容と関係ありそうでなさそうですけど、要するに他の VCS とは違うところがあるのだからその違いを意識しないとちゃんと使えませんよ、ということです。

11
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?