[Git] 命令筆記本

命令筆記本

目的

  快來翻翻你要的 Git Command 喔!

前言

  一開始接觸 Git 是使用 GitHub Desktop,但隨著開發環境轉到 Linux 上後,就習慣用 Command-line 的方式操作了,這篇就來筆記一下常用的命令;說來也怪,有時後就是會突然想不起來,如果你也有這種腦容量有限的老症頭,歡迎隨時來翻翻XDD

筆記

Git 設定

設定名稱 & 電子郵件

1
2
git config --global user.name <username>
git config --global user.email <email@address>

Git ui 顏色

1
git config --global color.ui true

命令設定別名

1
git config --global alias.<aliasname> <命令名稱>

例如:git config --global alias.st status
之後只要下 git st 就等於是 git status

列出設定清單

1
git config --global --list

Git 基本功

建立數據庫 ( init )

1
git init

複製數據庫到本地端 ( clone )

1
git clone <repo 連結>

顯示修改檔案清單 ( status )

1
git status

-s:僅顯示已修改檔案名稱
-s -b:顯示分支名稱

將檔案加入索引 ( add )

1
git add <file>...

可以使用 git add . 將當前目錄下的所有修改檔案加入索引

還原已修改檔案 ( checkout – )

1
git checkout -- <file>

提交檔案 ( commit )

1
git commit

-m <message>:訊息提交
--amend <message>:修改上一次 commit 內容

上傳(或更新)本地端分支

1
git push

合併(或更新)遠端至本地端分支

1
git pull

顯示提交紀錄 ( log )

1
git log

Git 分支 (Branch)

顯示分支清單

1
git branch

-r:顯示遠端分支
-a:顯示所有分支

建立分支

1
git branch <分支名稱>

修改分支名稱

1
git branch -m <舊分支名稱> <新分支名稱>

刪除分支

1
git branch -d <分支名稱>

切換分支 ( checkout )

1
git checkout

-b <分支名稱>:表示 建立並切換 至該分支

合併分支

1
git merge <分支名稱>

遠端操作

顯示遠端數據庫列表

1
git remote

添加遠端數據庫

1
git remote add <名稱> <repo 連結>

取遠端分支建立本地端分支

1
git checkout <本地分支名稱> origin/<遠端分支名稱>

在遠端建立分支 / 上傳(或更新)內容至遠端分支

1
git push <repo 名稱> <分支名稱>

查看遠端數據庫分支的修改內容

1
git fetch <repo 名稱> <分支名稱>

可以透過 git fetch -p 來更新遠端分支資訊
例如在 GitHub 上操作玩一套 merge 流程後,已經在 GitHub 上刪除該分支
就可以利用這到命令更新本地端的遠端分支資訊

合併(或更新)遠端至本地端分支

1
git pull <repo 名稱> <分支名稱>

註:pull = fetch + merge

刪除遠端分支

1
git push <repo 名稱> :<分支名稱>

修該遠端數據庫位址

1
git remote set-url <名稱> <新連結位址>

修改遠端數據庫名稱

1
git remote rename <舊名稱> <新名稱>

暫存 (Stash)

暫存現在的修改狀況

1
git stash

列出暫存清單

1
git stash list

取出上一次暫存

1
git stash apply

取出上一次暫存(該暫存會被移除)

1
git stash pop

可利用 stash@{id} 指定特定暫存

清空所有暫存

1
git stash clear

操作提交紀錄

修改上一次 commit

1
git commit --amend

放棄修改紀錄 (reset)

1
git reset HEAD^

--soft:取消上一次 commit,並 保留 修改紀錄
--hard:取消上一次 commit,並 刪除 修改紀錄

以上,是目前常用的命令,有什麼疑問都歡迎留言提問!

That’s it, DONE!

【參考資料】