Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Git ブランチとマージ 自分用メモ

More than 1 year has passed since last update.

ブランチって何?

並行して複数機能を開発するための仕組み
ほかの人の変更に影響を受けずに自分の開発を行える。

ブランチの仕組み

その前にGitのデータの持ち方を確認

リポジトリ
1. 各ファイルの圧縮ファイル index.htmlの圧縮ファイルA
2. ツリー git commitによって作成される。コミットしたときのスナップショット。「index.htmlはこの圧縮ファイルですよ」という情報)
3. コミットファイル git commitによって作成される。コミットについての情報(ツリー、作成者、日付、コミットメッセージ)
 tree ツリー1
 author Kenta May 12 2019
 parent 051Bd (ハッシュ化されたコミットID)
"最初のコミット"

コミットはスナップショットを記録すること。
各コミットは、親コミットを持っている。

ブランチ:コミットIDを持ったポインタ。常に、そのブランチの最新のコミットを指し示す。
HEAD:今現在、自分が作業しているブランチを指すポインタ。

ブランチもHEADもリポジトリの中に保存されている。

ブランチを新規追加

git branch <ブランチ名>

ただ新規のブランチを作るだけで、HEADの移動は行われない。

ブランチ一覧と、HEADを確認

git branch

リモートリポジトリのブランチも含めて表示

git branch -a

-a: "all"

どのブランチがどのコミットを指しているかの確認

git log --oneline --decorate

--onelineは短く表示したいからつけてるだけ。

ブランチの切り替え = HEAD を移動する

git checkout <ブランチ名>


ブランチを新規作成して、さらにそこに移動。

git checkout -b <新規ブランチ名>

これは、git branch <新規ブランチ名> + git checkout <新規ブランチ名>と同じ。

kounorimich
2018年7月からPython独習開始。11月から侍エンジニア塾の6か月コースの受講を開始しました。 4月からエンジニアとして勤務開始しましたが、まだまだ研修中です。(主にNode.js、Java、Scala)
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away