このレッスンでやること
ブランチは、同じリポジトリの中の、別の作業の流れです。自分のブランチで変更すれば、もとのブランチ(main)はそのままです。満足したら、自分のブランチをマージ(統合)して戻します。チームでは、変更のたびにこれを行います。このラボの Gitea にもともと入っているリポジトリ hello-git で、1 回やってみましょう。
始める前に
メモ
このレッスンの上にあるバーのラボを起動を押し、「実行中」と出るまで待ちます。Gitea は、バーの Gitea のリンクから開きます。下の実行ボタンは、それぞれのコマンドをラボのターミナルに順番に入力します。すべて同じセッションで動きます。様子を見たり、自分でコマンドを打ったりしたいときは、バーのターミナルを開く(新しいタブ)を押します。
1. Git に名前を教えて、リポジトリをコピーする
Git は、コミットのたびに名前を必要とします。そのあと git clone が、Gitea から hello-git を、ホームフォルダ ~ の中の同じ名前の新しいフォルダにコピーします。cd はそのフォルダに入ります。中には、ファイルが 2 つ、コミットが 2 つ、すでに入っています。「Git の基本」を先にやった人は、~/ を忘れないでください。付けないと、コピーがそのレッスンのフォルダの中に入ってしまいます。
git config --global user.name "Student"ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git config --global user.email "[email protected]"ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git clone http://student:student@gitea:3000/student/hello-git.git ~/hello-gitここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
cd ~/hello-gitここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
2. 自分のブランチを作る
git switch -c my-change は、my-change という新しいブランチを作り、そこへ移ります。これ以降のコミットはこのブランチに入り、main は動きません。
git switch -c my-changeここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
3. 変更してコミットする
訪問者リストに自分の行を足し、ステージしてコミットします。Git の基本と同じ 3 つの手順です。git log --oneline を実行すると、もとからあった 2 つのコミットの上に、あなたのコミットが見えます。
echo "Your Name" >> visitors.txtここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git add visitors.txtここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git commit -m "Add my name to the visitors list"ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git --no-pager log --onelineここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
4. ブランチをプッシュする
ブランチは、プッシュするまで自分のパソコンにしかありません。-u origin my-change で Gitea に送り、送り先も覚えさせます。git branch -a を実行すると、両側のブランチが一覧に出ます。Gitea は、プルリクエストを作るためのリンクも表示しますが、それは http://localhost で始まり、あなたのブラウザからは開けません。次のステップで、バーの Gitea のリンクを使ってください。
git push -u origin my-changeここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git --no-pager branch -aここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
5. Gitea でマージする
バーの Gitea のリンクを押し、ユーザー名 student、パスワード student でサインインします。student/hello-git を開き、Pull Requests(プルリクエスト)、New Pull Request(新しいプルリクエスト)の順に押します。my-change を main にマージするよう選び、Create Pull Request を押して、最後に Merge(マージ)を押します。プルリクエストは、チームでブランチのマージをお願いするしくみです。ほかの人が先に読むこともできます。
6. マージを手元に取り込む
あなたのパソコンは、まだマージのことを知りません。main に戻り、git pull で取り込みます。git log --oneline を実行すると、あなたのコミットとマージが見えます。
git switch mainここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git pullここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
git --no-pager log --onelineここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
先生へ
ヒント
このレッスンは、ラボで進めるレッスンの小さな例です。手順と実行ボタンがレッスンで、ラボは生徒一人ひとりの専用コピーです。このレッスンは Git の基本と同じ Gitea のラボを使うので、生徒は両方のレッスンを通して、1 つのターミナルと 1 つの履歴を持ち続けます。1 つのラボは、いくつでもレッスンの土台にできます。自分のモジュールにコピーして変えることも、レッスンビルダーのラボメニューから一から作ることもできます。