「Git」の基本を押さえて、実務で使えるようになるまで(基本編)
弊社ソリューション事業部では、ほとんど全ての案件でgitを導入してプロジェクトの管理をしております。そこでエンジニア歴間もない筆者が、具体的に実務ではどのように使っているかをお伝えしたく、この記事を書きました。
gitが便利なのは知っていて使ってみたいけど、具体的にどうやって使えばいいのか、また実務ではどのような使われ方をしているのか知りたいという方々に一読頂ければ幸いです。
この基本編では、 GitHub でリモートリポジトリを作成した状況から、ローカルリポジトリで初回コミット・pushするまでの過程を説明するとともに、gitコマンドの基本的かつ最低限のコマンド一覧をまとめました。
前提
筆者の環境
- wsl2
- Ubuntu-20.02
- git version 2.25.1
- GitHub
準備
1. GitHubでリモートリポジトリを作成する
- https://github.co.jp/ にアクセスしてログインする
- リモートリポジトリを作成する
2. ローカルでファイルを作成し、初回コミット・pushまでする
画像にあるように、下記コマンドをCLIで入力する。
$ echo "# REPOSITORY_NAME" >> README.md
$ git init
$ git add README.md
$ git commit -m "first commit"
$ git branch -M main
$ git remote add origin https://github.com/USER_NAME/REPOSITORY_NAME.git
$ git push -u origin main
=> Username for 'https://github.com': USER_NAME
Password for 'https://USER_NAME@github.com': Personal Access Token
3. Personal Access Tokenを発行する
Personal Access Tokenは下記画像で示した手順を参考に発行し、Personal Access Tokenの箇所に貼ってください。
1.
2.
3.
4.
5.
以上でgitコマンドを使うための準備ができました。
gitコマンド一覧
出典: Git (https://git-scm.com/)
今回はオプション等は極力省略させて頂き、最低限のものに絞りました。
- <>で囲んでいるものは適宜変更してください。例: git branch <BRANCH_NAME> → git branch develop
- or を付けているものはどちらかを使用するという意味です。 例: git add <FILE_NAME> or . → git add <FILE_NAME> か git add .
ローカルリポジトリの操作で使うコマンド
|
<BRANCH_NAME>としてブランチを切る。 |
---|---|
|
ローカルとリモートの全ブランチを表示する。 |
|
<BRANCH_NAME>に移動する。 |
|
変更されたファイルの状態を表示する。 |
|
変更されたファイルの変更箇所を表示する。 |
|
変更した箇所を避難させる。 |
|
git stash で避難させた箇所を戻す。 |
|
git stash で避難させた箇所を戻した上でstashから消す。 |
|
「 . 」の場合は変更したファイル全てを、<FILE_NAME> の場合は指定した <FILE_NAME> のファイルを、ステージングする。 git statusコマンドを叩くと、addされていないファイル達は赤文字※2で、addされたファイル達は緑文字※2で表示される。 |
|
ステージに上がっているファイルを、コミットする。 |
|
今いるブランチに<BRANCH_NAME>で指定したブランチの内容を反映する。 |
|
今までのコミット履歴と、ブランチの位置を表示する。自分の現在地は HEAD → で確認できる。 |
※2:色の表記はgitのデフォルト設定を前提としています。
ローカルリポジトリの操作で使うコマンド(取り消し系)
addする前で変更箇所を取り消したい時
|
「 . 」の場合は全ファイルの、<FILE_NAME> の場合は指定したファイルの、変更箇所を取り消して、一個前のcommitの状態に戻す。 |
---|
addした後でaddを取り消したい時
|
「 . 」の場合は全ファイルの、<FILE_NAME> の場合は <FILE_NAME> で指定したファイルの、addを取り消すが、変更箇所はそのまま変更された状態のままにする。 (git statusコマンドを打つと、赤色で対象ファイルが表示される) |
---|
commitした後でcommitを取り消したい時
|
コミットを取り消し、addした後の状態にする。(git statusコマンドを打つと、緑色で対象ファイルが表示される) |
---|---|
|
コミットを取り消し、addする前の状態にして、変更した箇所は変更されたままにする。(git statusコマンドを打つと、赤色で対象ファイルが表示される) |
|
コミットを取り消しつつ、全ファイルのaddも取り消し、addされる前の変更した箇所もなくなる。1つ前のコミットの状態になる。 |
追跡対象外ファイル等を消したい時
|
追跡対象外ファイルは git checkout HEAD . で削除されないので、こちらのコマンドを使う。 |
---|---|
|
追跡対象外ディレクトリを削除したい時。 |
|
追跡対象外ファイル等で削除される対象を確認したい時に使う。 |
リモートリポジトリとのやり取りで使うコマンド
|
ローカルリポジトリでのコミットをリモートリポジトリに反映する。 |
---|---|
|
リモートリポジトリでの変更情報情報だけをローカルリポジトリに落としてくる。(情報だけ取ってきて変更は反映しない)(-p をつけることで不要なブランチの情報は除ける) |
|
リモートリポジトリでの変更をローカルリポジトリに落としてくる。(変更を反映して、リモートリポジトリに状態を合わせる) |
おわりに
今回は、GitHubでのリモートリポジトリを作成した状況から、ローカルリポジトリで初回コミット・pushするまでの過程を説明するとともに、gitコマンドの基本的かつ最低限のコマンド一覧を紹介しました。
次回の実務編では、具体的に実務で使う方法や手順を述べようと思います。
この記事を書いた人
-
大学4年時春に文系就職を辞め、エンジニアになることを決意し、独学でRuby、Ruby on Railsを学習。
約1年間の独学期間を経てアーティスへWebエンジニアとして入社。現在はWebエンジニアとして、主にシステムの開発・運用に従事している。
抽象的なもの、複雑なものを言語化して文章にするのが好きで得意。
この執筆者の最新記事
- 2024年10月8日WEBVue3でjQueryのdatepickerを使いたい!実装手順と注意点を解説します。
- 2024年8月21日WEBVue3の非同期コンポーネントを使ってみる
- 2024年5月28日WEBLaravel×Inertia×Vue3でファイルアップロード機能を作ってみた
- 2024年4月15日WEBLaravel×Inertia×Vue3でCRUD機能を持つSPAを作ってみた
関連記事
最新記事
FOLLOW US
最新の情報をお届けします
- facebookでフォロー
- Twitterでフォロー
- Feedlyでフォロー