(1)右邊下載
https://git-scm.com/
(2)下載安裝完成
Windows用Git bash
(3)測試看看有無安裝成功
CND > git version
Git bash
(1) 移動路徑
$ cd c:
$ cd test (進入資料夾)
$ cd test/css (進入資料夾)
可以直接拖曳資料夾放cd 後
(2) 觀看資料夾內容
$ ls
(3) 回上一層( PS:是兩個.. 不是一個 . )
$ cd ..
(4) 新增資料夾
$ mkdir 資料夾名稱
(5) 新增檔案
$ touch index.html
使用Git為什麼不直接在命令提示字元下指令就好而要開啟git bash呢?
兩者其實是差不多的,git bash 有加上一些 linux 命令跟 git 一些內建指令
但實際上 98% 以上 git 功能都有,可以依照自己想用的來投入哩 :D
https://w3c.hexschool.com/git/fd6f6be
輸入關鍵字「終端機」或「terminal」,尋找到對應軟體後,按下 Enter
複製此指令「git --version」,並在終端機點選滑鼠右鍵,選擇「Paste」貼上後,按 Enter
MAC 的終端機不論你是用預設或者是 iTerm2 ,他都沒有預設高亮效果,
這裡則是使用 Oh My Zsh ,這裡也提供一個相關操作教學連結
https://gist.github.com/kevin-smets/8568070
(1) 移動路徑
cd c:
cd d:
cd test (進入資料夾)
cd test/css (進入資料夾)
(2) 觀看資料夾內容
ls
(3) 回上一層( PS:是兩個.. 不是一個 . )
cd ..
(4) 新增資料夾
mkdir 資料夾名稱
(5) 新增檔案
touch index.html
( 同windows 只差在$ [$電腦自動生成的,不用自己輸入] )
Sourcetree
一套提供不會下指令的人使用Git的介面(白話文XD)
https://ithelp.ithome.com.tw/articles/10209045
Sourcetree內可見版本控制,及編輯者資料
(1)查看git內容
git config --list
(1)編輯git內編輯者email資料
git config --global user.email "你的mail"
(1)編輯git內編輯者名字
git config --global user.name "你的名字"
安裝git 監控版本控制(master)
安裝完後會有個.git的隱藏資料夾
git init
(1) 安裝數據庫
進去新建立的專案內安裝數據庫(.git)
git init
(2) 工作目錄內新增or編輯資料後,加入索引
git add . ( . = 全部檔案 )
git add a.txt (個別)
(2-1) 刪除索引 (尚未commit)
git reset HEAD (全部所以刪除)
git reset HEAD "檔案名稱"
git rm --cached "檔案名稱"
(3) 觀看哪些已加入索引(檢查狀態)
git status
沒有加入索引的檔案會顯示紅字(資料夾內有資料才會顯示)
Q:
新增索引後出現No commits yet,後面commit跟查詢紀錄都可以使用,
是不是MAC跟Windows的git控制器會顯示不同?
A:
那句話意思只是和你說你目前沒有任何 commit 記錄提醒而已,
不是錯誤訊息哩,請不用擔心 :D
(4) 提交(commit)更新
git commit -m '輸入想增加的註解'
(5) 查詢紀錄
用來查看commit紀錄
mac 'q' 離開畫面
git log
(6) 查看有無編輯
git diff
git diff "file"(查看各別檔案)
結論:
a. 資料提交(commit)後,再編輯資料,可被檢查出被編輯(modified)了
git status
b. 被索引(add)的資料提交(commit)後,被索引(add)的資料會被清空~~
git status
差異
使用時機:不想要受到版本控制的檔案(暫存檔、帳號密碼等)
(1) 建立不要進版控的資料
touch .gitignore
(2) 內文新增欲忽略的檔案
ex:
index3.html
*.html ( 副檔名html的全部忽略 )
css/ ( css資料夾內資料全部忽略 )
(3) 此時新增index3.html檔案,並檢查(git status)尚未索引(add)的檔案
不會顯示.gitignore 內 不進版控的資料
git status
網路上各大神留下可以gitignore的檔案
https://github.com/github/gitignore
(1) 恢復 單一檔案 到最新 commit 狀態
git checkout "檔案名稱"
(2) 還原工作目錄與索引(全部),會與最後一次 commit 狀態一樣
未commit的資料會消失
git reset --hard
還原檔案 vs. 取消索引(尚未commit)
git reset HEAD (全部所以刪除)
git reset HEAD "檔案名稱"
git rm --cached "檔案名稱"
參考:
https://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html
https://backlog.com/git-tutorial/tw/reference/
查詢版本
git version
查詢設定列表
git config --list
輸入姓名
git config --global user.name "你的名字"
輸入email
git config --global user.email "你的email"
在本地資料夾新增數據庫
git init
複製遠端數據庫
git clone 遠端數據庫網址
增加檔案進入索引
git add 檔案名稱
增加全部檔案進入索引
git add .
查詢狀態
git status
顯示歷史紀錄
git log
將索引提交到數據庫
git commit -m '更新訊息'
還原工作目錄與索引,會跟最後一次 commit 保持一樣
git reset --hard
全部檔案取消索引
git reset HEAD
單一檔案取消索引
git reset HEAD 檔案名稱
恢復單一檔案到最新 commit 狀態
git checkout 檔案名稱
刪除最近一次 commit
git reset --hard HEAD^
上面語法如果刪除錯了可以再用此語法還原
git reset --hard ORIG_HEAD
刪除最近一次 commit,但保留異動內容
git reset --soft HEAD^
commit 後發現有幾個檔案忘了加入進去,想要補內容進去時
git commit --amend
顯示所有本地分支
git branch
新增分支
git branch 分支名稱
切換分支
git checkout 分支名稱
合併指定分支到目前的分支
git merge 分支名稱
刪除分支
git branch -d 分支名稱
複製遠端數據庫
git clone 遠端數據庫網址
查詢遠端數據庫
git remote
將本地分支推送到遠端分支
git push 遠端數據庫名稱 遠端分支名稱
將遠端分支拉下來與本地分支進行合併
git pull
查詢標籤
git tag
查詢詳細標籤
git tag -n
刪除標籤
git tag -d 標籤名稱
新增輕量標籤
git tag 標籤名稱
新增標示標籤
git tag -am "備註內容" 標籤名稱
暫時儲存當前目錄
git stash
瀏覽 stash 列表
git stash list
還原暫存
git stash pop
清除最新暫存
git stash drop
清除全部暫存
git stash clear