基礎的な操作方法を復習したい。
そんな方に向けた記事です。
progateの内容に基づいてgitの基礎コマンドラインをまとめました。
備忘録として活用していただけたらと思います。
「git」コマンドラインの基礎操作9種
エンジニアとして働くなら共同開発に欠かせない「git」。
今回はgitの基礎操作を解説します。
・共有するファイルの選択
・ファイルの記録(コミット)
・リモートリポジトリの準備
・ファイルのアップロード
・ファイルのダウンロード
・ファイルの変更を確認する
・addしたファイルを確認する
・ファイルの変更箇所を確認する
・コミット履歴を確認する
・変更された箇所を確認する
gitの準備(初期化)「git init」
gitはターミナルを操作します。初回は初期化をするために「git init」を実行します。
「initialize」の略で、初期化の意味。
$ git init
$ git init
Initialized empty Git repository in /パス/.git/ $
共有するファイルの選択「git add」
編集したファイルをアップロードする為に、ファイルを選択する必要があります。
そこで使うのが「git add」。
$ git add アップロードしたいファイル名
$ git init index.html
ファイルの記録(コミット)「git commit -m”*******”」
ファイルをアップする際に記録を残します。
これをコミットと言い、どのような変更があったのか開発メンバーに記録を残す為に使います。
「git commit -m “*******”」
$ git commit -m "コミットメッセージ"
$ git commit -m "create index.html"
実行結果は以下のようなメッセージが表示されます。
$ git commit -m "create index.html"
[master (root-commit) 4f096bd] Create index.html
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 index.html
$
リモートリポジトリの準備「git remote add **** ****」
ファイルをアップするためには格納するためのリポジトリを設定する必要があります。
そのリポジトリの設定コマンドが「git remote add」。
$ git remote add リポジトリ名 URL
$ git remote add orgin http://seikouudoku.com/mysite.git
※リポジトリ名は「origin」に設定することが多い
ファイルのアップロード「git push **** master」
編集したファイルをアップロードするコマンドが「 git push **** master」。
アップロードのことを「push」と言います。
$ git push リポジトリ名 master
$ git push origin master
実行結果は以下のようなメッセージが表示されます。
$ git push origin master
Counting objects: 3, done.Writing objects: 100% (3/3), 219 bytes | 219.00 KiB/s, done.Total 3 (delta 0), reused 0 (delta 0)
remote: From /home/seikoudoku/.remote/mysiteremote:
* [new branch] master -> origin/master To /home/seikoudoku/.remote/mysite.git *
[new branch] master -> master
$
ファイルのダウンロード「git pull origin master」
アップロードされたファイルのダウンロードは「git pull **** master」。
ダウンロードを「pull」と言います。
$ git pull リポジトリ名 master
$ git pull origin master
実行結果は以下のようなメッセージが表示されます。
$ git push origin master
remote: Counting objects: 3, done.remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done. From /home/seikoudoku/.remote/mysite *
branch master -> FETCH_HEAD * [new branch] master -> origin/master
$
一旦ここまでのまとめ
gitでの開発の操作は以下のサイクルをくり返していると言えます。
②「commit」
③「push」
④「pull」
※また①に戻って編集する
ファイルの変更を確認する「git status」
開発時はたくさんのファイルを編集するので、
いざアップする際にどのファイルに変更があったのか忘れてしまうかもしれません。
そこで、変更のあったファイルを探すことが出来るのが「git status」。
$ git status
※変更のあったファイル名は「modified: *****」で表示されます。
実行結果は以下のようなメッセージが表示されます。
$ git status
On branch masterChanges not staged for commit: (use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: index.html ←変更があったファイル名
modified: stylesheet.css ←変更があったファイル名
no changes added to commit (use "git add" and/or "git commit -a")
$
addしているファイルの確認「git status」
変更があったファイル名を探すだけでなく、「add」中のファイルを探すのにも「git status」。
変更のあったファイル名は赤色で「modified: *****」が表示され、
「add」中のファイル名は緑色で「modified: *****」が表示されます。
$ git status
実行結果は以下のようなメッセージが表示されます。
$ git status
On branch masterChanges to be committed: (use "git reset HEAD <file>..." to unstage)
modified: index.html
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: stylesheet.css
$
ファイルの変更箇所を確認する「git diff」
続いてファイル内の変更があった箇所を特定するコマンドが「git diff」。
$ git diff
※追加されたコードは緑色、変更された(変更前)コードは赤色で表示されます。
実行結果は以下のようなメッセージが表示されます。
$ git diff
diff --git a/index.html b/index.htmlindex e69de29..e48904b 100644--- a/index.html
+++ b/index.html@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>Progate</title>
+ <link rel="stylesheet" href="stylesheet.css"> ←変更後、追加されたものは緑
+ </head>
+ <body>
+ <h1 class="title">サイトへようこそ</h1>
- <p class="subtitle">プログラミングが学びましょう。</p> ←変更前は赤
+ <p class="subtitle">gitを学びましょう。</p>
+ </body>
+</html>
\ No newline at end of file
コミットの履歴を確認する「git log」詳細確認は「git log -p」
コミットされたメッセージの履歴を確認したいなら「git log」。
また、変更された内容を確認したいなら「git log -p」。
表示内容は多いことがほとんどなので、矢印を使って上下の移動をします。終了したい場合は「Qキー」を押します。
$ git log
実行結果は以下のようなメッセージが表示されます。
$ git log
remote: Counting objects: 4, done.remote: Compressing objects: 100% (4/4), done.remote: Total 4 (delta 0), reused 0 (delta 0) Unpacking objects: 100% (4/4), done. From /home/seikoudoku/.remote/mysite * branch master -> FETCH_HEAD d484dd3..70e55ee master -> origin/master Updating d484dd3..70e55eeFast-forward index.html | 12 ++++++++++++ stylesheet.css | 3 +++ 2 files changed, 15 insertions(+) mysite $ git log commit 70e55eea545489cb34ab9637a118336cd7e49be9 (HEAD -> master, origin/master) commit 70e55eea545489cb34ab9637a118336cd7e49be9 (HEAD -> master, origin/master) commit 70e55eea545489cb34ab9637a118336cd7e49be9 (HEAD -> master, origin/master) commit 70e55eea545489cb34ab9637a118336cd7e49be9 (HEAD -> master, origin/master) Author: rintaro <rintaro@seikoudoku.com> ←コミットした人 Date: Tue Jan 10 11:45:43 2023 +0900 ←コミットした時間 Change subtitle color ←コミットしたメッセージ commit d484dd37610c5792666472e1c6610daef5a2e638 Author: rintaro <rintaro@seikoudoku.com> ←コミットした人 Date: Tue Jan 10 11:21:02 2023 +0900 ←コミットした時間 Create stylesheet.css ←コミットしたメッセージ commit 4f096bd4ee12ac7123871d25cb4d96f0d76324d6 Author: rintaro <rintaro@seikoudoku.com> ←コミットした人 Date: Tue Jan 10 11:00:48 2023 +0900 ←コミットした時間 Create index.html ←コミットしたメッセージ (END)
変更された内容を確認したいなら「git log -p」
$ git log -p
実行結果は以下のようなメッセージが表示されます。
$ git log
commit 70e55eea545489cb34ab9637a118336cd7e49be9 (HEAD -> master, origin/master)
Author: rintaro <rintaro@seikoudoku.com>
Date: Tue Jan 10 11:45:43 2023 +0900
Change subtitle color
diff --git a/index.html b/index.html
index e69de29..e48904b 100644
#NAME?
#NAME?
@@ -0,0 +1,12 @@
+<!DOCTYPE html>^M ←変更された内容
+<html>^M
+ <head>^M
+ <meta charset="utf-8">^M
まとめ
「git」コマンドラインの基礎操作9種を解説しました。
以下まとめです。
解説 | コマンド |
gitの準備 | git init |
共有するファイルの選択 | git add |
ファイルの記録(コミット) | git commit -m”*******” |
リモートリポジトリの準備 | git remote add ***** |
ファイルのアップロード | git push **** master |
ファイルのダウンロード | git pull **** master |
ファイルの変更を確認する | git status |
addしたファイルを確認する | git status |
ファイルの変更箇所を確認する | git diff |
コミット履歴を確認する | git log |
変更された箇所を確認する | git log -p |
以上、参考になれば幸いです。
最後までお読みいただきありがとうございました。