本文へスキップ
BecomeCoder

Gitコース · 第2章 ブランチとマージ · レッスン11

ブランチで作業する

ブラウザで完結

導入

ブランチに移動したら、あとはいつも通り編集してコミットするだけです。すると履歴が本当に枝分かれします。ここでは feature 側にコミットを積んで、main と分岐する様子を見ます。

説明

feature に移り、ファイルを変えてコミットします。

git init
git add .
git commit -m "Initial commit"
git switch -c feature
echo "console.log('new feature');" >> app.js
git add app.js
git commit -m "Add new feature"
git log --oneline

feature の履歴には2つのコミットが見えます。ここで main に戻ると、app.js への変更が 消えている ことに驚くかもしれません。

git switch main
cat app.js
git log --oneline

変更は消えたのではなく、feature ブランチの中にちゃんと残っています。main にはまだ合流していないだけです。ブランチを移動すると、作業ツリーもそのブランチの内容に切り替わります。

flowchart LR
    C1["C1"] --> C2["C2 (main)"]
    C2 --> C3["C3 (feature)"]

やってみよう

上の手順で feature にコミットし、main に戻ると app.js が元に戻ること、そして feature に戻すと復活することを確認しましょう。ブランチが独立した作業場所であることが体感できます。

演習

feature の履歴を1行ずつ表示してください(2コミット見えれば成功です)。

ヒント1を見る

feature に切り替えてコミットを積んでから git log --oneline

実際に動かしてみよう

下の端末に git コマンドを打って Enter を押すと、その場で結果が返ります。本文の手順を実際になぞりながら進めましょう(各レッスンは毎回まっさらな状態から始まり、「最初からやり直す」でいつでも戻せます)。

Git(シミュレート)

ブラウザ内でGitコマンドを試せる学習用環境を読み込みます(本物のgitではなく、動きを再現したものです)。
スクロールして表示された時点でも自動で読み込まれます。