Git
Git はソースコードの分散型バージョン管理システムです
ざっくり言うと
- 分散型 = 複数の場所(人)でそれぞれが管理する
- バージョン管理システム = セーブポイントがある
みたいなイメージを持っておいてください
例としては、ゲームの共用アカウントを複数人が管理しながら遊んでるみたいな感じです
インストール
公式ダウンロードページ から Git をインストールしましょう
自分の環境に Git が入っているかどうかはwhich git
のようにwhich
コマンドを使って探したり、git --version
などと打ってエラーが出るか見てみたりして確認してみましょう
ちなみに、git --version
と打ったときに ↓ のようにバージョンが出れば OK です
※WSL で Ubuntu の人はsudo apt install git
とかでインストールできます(パスワードが求められるので入力する必要あり)
よくわからない方は Slack の#random2023 チャンネルや DM で質問、もしくは手を挙げて一緒に環境構築しましょう
セットアップ
Git を初めて使う人は自分のユーザーネーム、E メールを Git に設定しましょう(後々 GitHub を使うときとかに必要)
以下の 2 つのコマンドをそれぞれmatumoto
となっているところやs1280136@u-aizu.ac.jp
となっているところなどを自分のものに変更して設定してみましょう
git config --global user.name "matumoto"
git config --global user.email "s1280136@u-aizu.ac.jp"
※E メールは学内のメールでなく、個人のメールでも大丈夫です
確認として、以下のコマンドを実行した際に先程入力した内容が表示されていれば OK です
git config --global -l
使い方
使い方の説明は以下のような手順で進めていきます
git init
で Git のリポジトリ1を作成する- ファイルをそのリポジトリ内で作成する
git add
してファイルを一時保存(ステージングに上げる)git commit
して一時保存してたファイル達を保存(コミットツリーに追加)git log
で保存履歴を確認(コミットツリーを見る)
git init
で Git のリポジトリを作成する
自分の PC のどこかにlearn-git
という名前でディレクトリを作ってください
例.
cd ここに作業用のディレクトリ
mkdir learn-git
cd learn-git
その後、git init
を行い、リポジトリを作成してください
git init
git init
を行った場所には.git
というディレクトリが生成され、その中に Git リポジトリとしての情報が格納されています
(.git の中身をいじることは基本的にないです)
ファイルをそのリポジトリ内で作成する
では、作成した Git リポジトリ内でファイルを作成してみましょう
ITP1-1-A.c
という名前のファイルを作成し、以下の内容を記述してください
#include<stdio.h>
int main(){
printf("Hello World\n");
return 0;
}
ファイル構造は以下のような感じです
learn-git
└── ITP1-1-A.c
git add
してファイルを一時保存(ステージングに上げる)
git add ここにファイル名
としてファイルを指定することでファイルを一時保存しておくことができます
「ステージング」を知りたい方へ
次の記事などがわかりやすいです!
それでは先程作成したITP1-1-A.c
を以下のコマンドでgit add
してみましょう
git add ITP1-1-A.c
git commit
して一時保存してたファイル達を保存(コミットツリーに追加)
git commit
とすることでgit add
で一時保存してたファイルを保存することができます
それでは、先程git add
したファイル達をコミットメッセージ付きでコミットしてみましょう
git commit -m "ITP1-1-A.cを追加した"
git commit
だけでもコミットはできますが、それがどんなものなのかメッセージがついていないと非常に分かりづらいのでコミットメッセージは必ず付けるようにしましょう
git log
で保存履歴を確認(コミットツリーを見る)
git log
でコミット履歴を見ることができます
先程のコミットを確認してみましょう
git log
ちなみに、コミットをさらにいくつかしていくと以下のようなログになります
演習
ここまで出来た人は自分でもいくつかファイルを作ったりしてgit
コマンドの動作を確認してみましょう!
git log --graph
や、git status
など、よく使われる便利なコマンドやオプションについて調べてみるのも楽しいと思います
(個人的には git add -i
を初めて知ったとき便利すぎて驚きました)
- Git で管理するディレクトリ(もしくはそのプロジェクト)のことをリポジトリといいます↩