Git 基本指令介紹
git add . => 將所有的資料加入到 staged 的狀態 (要加入git 的第一個步驟)
git add 檔名 => 將指定的檔名加入staged 的狀態
git add 檔名 -p =>可進入編輯模式,部分不想建立index的內容可刪除
git checkout -- <File> 可以將檔案還原回最新已經commit上去的版本 => 從index裡面將檔案內容還原回working tree
(檔案還原一定要加上-- ,否則會被認為是要切換到分支)
也可以用來還原資料夾 git checkout -- folderName
如果單一檔案想要退回之前已經commit 過的特定版本
git checkout 版號 檔案名稱 => 還原之後的檔案就已經在index內 stage的狀態
也可以取分支名稱內的特定檔案
git checkout 分支名稱 檔案名稱 => 從分支取指定檔案回來
git diff =>比較working tree(工作目錄)跟Index(索引)的差異
git diff --cached => 比較Index(索引)裡的變更跟最新版的變更
git br --merged => 顯示已經merge過的分支
git br --no-merged =>顯示還沒有merge過的分支
git reset --hard ORIG_HEAD => reset 到上一個版本( Merge 之前的版本,要有Merge ORIG_HEAD才有效果)
可以用$ car .git/ORIG_HEAD 看目前 ORIG_HEAD只到哪一個版本
git reset --hard 指定版號 => 可退回指定的版號,但是中間的紀錄都會消失。
已經加入到index的檔案,也可以透過git reset --hard 來復原(但是是全部復原)
$ git config --global alias.st status =>設定 alias
git log --oneline => 可以檢視較短的log
git log --oneline --graph => 可以檢視版本線圖
git log --oneline --graph -4 =>只呈現最近的四筆資料
git log --oneline --graph -10 --all =>只呈現最近的10筆資料(包含所有分支)
遠端Reposter 相關指令
git remote -v => 可查看是否有設定遠端的Repostery
git clone --no-checkout git網址 => 檔案還沒checkout 回來
git clone git網址 名稱(可設可不設,設定之後會以設定的名稱設定資料夾)
git checkout master => 這時候才把專案下載下來,針對大型專案的時候可以個別CO檔案,不用整個專案CO
git clone --bare git網址 只會把repostory本身下載回來(版控資料夾),不下載工作目錄 bare(裸)
git remote add origin 遠端Repostery的網址 => 遠端Repo通常命名origin
git push => 將本地端的版本推送到Git hub(目前的分支)
git push --all => 將本地端所有分支的版本通通都推送到Git hub(包含本地已建立、遠端分支、遠端追蹤分支未建立的也會一併建立)
git push --set-upstream origin master =>將遠端的origin 跟本地的master 繫結
git push -u origin master =>遠端的origin 跟本地的master 繫結 (-u 是縮寫)
git pull = git fetch + get merge (在這裡才會看到fast-forward)
vi .git/config => 可以直接修改遠端儲存庫的URL
git init => 初始化git 的資料夾,完全空白沒有版控的專案要先用這個指令初始化git
git config --global user.name 要設定的名稱
git config --global user.email 要設定的email
git config --global user.name 檢視已設定的使用者名稱
git config --global user.email 檢視已設定的email
git status => 檢視目前git的狀態
git commit -m "要commit的訊息" => git commit(要先add在commit) ,m 是message的意思
git log => 檢視log
git config core.editor => 檢查目前GIT預設的編輯器
git config --global core.editor "'C:\Program Files\Notepad++\notepad++.exe'" => 將GIT預設的編輯器更改為notpad++ ,
路徑裡面記得加上單引號
如果要改回vim => git config --global core.editor "vim"
Ctr+L => 可以清空畫面
======== 開發小技巧
Shift + 點選檔按滑鼠右鍵 => 可以多出隱藏欄位 複製路徑
要確定複製後的路徑是不是有效路徑,可以在cmd裡面測試
如果貼上路徑+enter 可以叫出Notepad++ 來執行,表示路徑沒有問題