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_HEAD10. 上傳資料之前,需先更新remote資料,避免造成衝突
$ git reset --hard ORIG_HEAD
$ git pull --rebase11. 在Mac、Linux 终端显示 Git 当前所在分支
參考 http://gitready.com/advanced/2009/02/11/pull-with-rebase.html
TBD
若需要比較複雜的用法,可以參考下列資料。
- https://kingofamani.gitbooks.io/git-teach/content/chapter1_install_git/index.html
- https://git-scm.com/book/zh-tw/v1