2017年1月28日 星期六

Git 常用命令摘要

此處參考 O'Reilly 書籍"版本控制使用Git",整理一些常用的 Git 命令,方便自己查找。

1. 取得 Repository 的資料
$ git clone https://github.com/alb423/wsdiscovery.git

2. 設定基本資訊
$ git config --global user.name "Albert Liao"
$ git config --global user.email "alb423@gmail.com"

3. 檢視目前狀態
$ git log
$ git status
$ git diff
$ git diff -S"TheSearchString"
$ git diff --cached 等同於 $ git diff --staged
$ git ls-files --stage

4. 放棄修改
移除一個已經被加入,但並未送交的檔案
$ git checkout -- . 
移除一個已經被送交的檔案
$ git rm  commited_file

5. 上傳資料
$ git add  aaa.c
$ git commit
$ git push

6. 修改上次 commit 的說明
$ git commit --amend

7. 切換至其他 branch
$ git branch
   bug/pr-1
   bug/pr-2
 *dev
   master
$ git checkout bug/pr-1

8. 合併,將 alternate 的資料合併至 master
$ git checkout master
$ git status
$ git merge alternate
$ git log --graph --pretty=oneline --abbrev-commit 
$ git diff --ours
$ git diff --theirs
$ git ls-files -u

9. Undo a git merge that hasn't been pushed yet
$ git reset --merge ORIG_HEAD
$ git reset --hard ORIG_HEAD
10. 上傳資料之前,需先更新remote資料,避免造成衝突
$ git pull --rebase
參考 http://gitready.com/advanced/2009/02/11/pull-with-rebase.html
11. 在Mac、Linux 终端显示 Git 当前所在分支


TBD