チュートリアルGit を初めてコミットする
このチュートリアルでは、Git の仕組みについて少し学びます。プロジェクトを作成し、ファイルを編集し、コマンドラインから Git リポジトリに変更をコミットする手順を説明します。
このチュートリアルが終わったら、Git の使い方を練習するためのプロジェクトを作成しましょう。
必要なもの
始める前に
- ローカルマシンに Git をインストールします。
- GitLabのインスタンスにサインインできることを確認します。組織に GitLab がない場合は、GitLab.com でアカウントを作成してください。
- SSHキーを作成し、GitLabに追加します。SSHキーは、あなたのコンピューターとGitLabをセキュアに通信する方法です。
Gitとは?
手順に入る前に、Gitの基本的な概念について説明しましょう。
Gitはバージョン管理システムです。ファイルの変更を追跡するために使われます。
コードや文書のようなファイルを Gitリポジトリに保存します。ファイルを編集したいときは、リポジトリを自分のコンピュータにクローンし、変更を加え、変更をリポジトリにプッシュバックします。GitLabでは、Gitリポジトリはプロジェクトの中にあります。
変更をプッシュするたびに、Gitはそれを一意のコミットとして記録します。これらのコミットは、ファイルがいつどのように変更されたか、誰が変更したかという履歴を作ります。
Git リポジトリで作業するときは、ブランチで作業します。デフォルトでは、リポジトリの内容はデフォルトブランチにあります。変更を加えるには
- 自分のブランチを作成します。作成した時点でのデフォルトブランチのスナップショットです。
- 変更を加えてブランチにプッシュします。プッシュするたびにコミットが作成されます。
- 準備ができたら、ブランチをデフォルトブランチにマージします。
ちょっと圧倒されてしまったかもしれませんが、がんばってください。これからこれらのコンセプトを実際に見ていくことになります。
ステップ
これから行うことの概要です:
- サンプル・プロジェクトを作成します。
- リポジトリをクローンします。
- ブランチを作成し、変更を加えます。
- コミットして変更をプッシュします。
- 変更をマージしてください。
- GitLab で変更を確認します。
サンプルプロジェクトの作成
まずはじめに、GitLabでサンプルプロジェクトを作成します。
- GitLabの左サイドバー、一番上にある「Create new({plus})」から「New project/repository」を選択します。
-
プロジェクト名には
My sample project
と入力します。プロジェクトのスラッグが生成されます。このスラッグは、プロジェクト作成後にアクセスするための URL となります。 - Initialize repository with a READMEが選択されていることを確認してください。他のフィールドをどのように入力するかはあなた次第です。
- Create projectを選択します。
リポジトリのクローン
プロジェクトのリポジトリをクローンできます。リポジトリをクローンするということは、自分のコンピューターや、ファイルを保存して作業したい場所にコピーを作成するということです。
-
プロジェクトページで、クローンを選択します。SSH でクローンの URL をコピーします。
-
コンピュータでターミナルを開き、ファイルをクローンしたいディレクトリに移動します。
-
git clone
と入力し、URLを貼り付けます:git clone git@gitlab.com:gitlab-example/my-sample-project.git
-
ディレクトリに移動します:
cd my-sample-project
-
デフォルトでは、リポジトリのデフォルトブランチをクローンしています。通常、このブランチは
main
です。念のため、デフォルトブランチの名前を確認してください:git branch
今いるブランチにはアスタリスクが付いています。キーボードの
Q
を押して、メイン・ターミナル・ウィンドウに戻ります。
ブランチを作成して変更を加えます
リポジトリのコピーが手に入ったので、自分のブランチを作成し、単独で変更作業を行えるようにします。
-
example-tutorial-branch
という新しいブランチを作成します。git checkout -b example-tutorial-branch
-
Visual Studio Code、Sublime、
vi
などのテキストエディタで、README.md ファイルを開き、次のテキストを追加します:Hello world! I'm using Git!
-
ファイルを保存してください。
-
Git は変更されたファイルを記録しています。どのファイルが変更されたのかを確認するには、ステータスを取得します。
git status
以下のような出力が得られるはずです:
On branch example-tutorial-branch Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: README.md no changes added to commit (use "git add" and/or "git commit -a")
変更をコミットしてプッシュ
リポジトリ内のファイルに変更を加えました。さて、最初のコミットをして変更を記録しましょう。
-
README.md
ファイルをステージングエリアに追加します。ステージングエリアは、コミットする前にファイルを置く場所です。git add README.md
-
ファイルがステージされていることを確認します:
git status
以下のような出力が得られ、ファイル名が緑色のテキストで表示されるはずです。
On branch example-tutorial-branch Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: README.md
-
ステージされたファイルをコミットし、あなたが行った変更を説明するメッセージを含めます。メッセージを二重引用符 (“) で囲むようにしてください。
git commit -m "I added text to the README file"
-
これで変更があなたのブランチにコミットされましたが、あなたのブランチとそのコミットはまだあなたのコンピュータにしかありません。まだ誰もアクセスできません。ブランチを GitLab にプッシュしましょう:
git push origin example-tutorial-branch
ブランチが GitLab に公開され、プロジェクトの他のユーザーからも見えるようになりました。
変更をマージ
これで、example-tutorial-branch
ブランチの変更をデフォルトブランチ (main
) にマージする準備ができました。
-
リポジトリのデフォルトブランチを確認してください。
git checkout main
-
あなたのブランチをデフォルトブランチにマージしてください。
git merge example-tutorial-branch
-
変更をプッシュします。
git push
GitLab で変更内容を見る
できましたね!ブランチのREADME.md
ファイルを更新し、その変更をmain
ブランチにマージしました。
UI を見て変更を確認しましょう。プロジェクトに移動します。
- 下にスクロールして、
README.md
ファイルの内容を表示します。変更が表示されているはずです。 -
README.md
ファイルの上にある、Last commit列のテキストを見てください。あなたのコミットメッセージがこの列に表示されます:
これでコマンドラインに戻り、個人用ブランチ (git checkout example-tutorial-branch
) に戻ることができます。これでコマンドラインに戻り、個人用ブランチ ( ) に戻ることができます。ファイルの更新や新しいファイルの作成を続けることができます。git status
と入力して変更内容を確認し、そのままコミットしてください。
失敗しても気にしないでください。Git ではすべてを元に戻すことができますし、もし元に戻せなくなった場合は新しいブランチを作ってやり直すことができます。
お見事。
Git の学習リソースをもっと探す
- Git の完全な入門については Git for GitLabビギナーズコース(1時間33分)。
- GitとGitLabに関する他のチュートリアルはチュートリアルページでご覧ください。