之前博主發(fā)布過一篇關于Git快速入門篇http://blog.csdn.net/u014377963/article/details/56276429現(xiàn)在補充一下
歡迎大家關注我的其他Github博客和CSDN博客捌袜,互相交流糯耍!
庫管理
克隆庫
git clone https://github.com/php/php-src.git
git clone --depth=1 https://github.com/php/php-src.git # 只抓取最近的一次 commit
歷史管理
查看歷史
git log --pretty=oneline filename # 一行顯示
git show xxxx # 查看某次修改
標簽功能
git tag # 顯示所有標簽
git tag -l 'v1.4.2.*' # 顯示 1.4.2 開頭標簽
git tag v1.3 # 簡單打標簽
git tag -a v1.2 9fceb02 # 后期加注標簽
git tag -a v1.4 -m 'my version 1.4' # 增加標簽并注釋, -a 為 annotated 縮寫
git show v1.4 # 看某一標簽詳情
git push origin v1.5 # 分享某個標簽
git push origin --tags # 分享所有標簽
回滾操作
git reset 9fceb02 # 保留修改
git reset 9fceb02 --hard # 刪除之后的修改
取消文件的修改
git checkout -- a.php # 取消單個文件
git checkout -- # 取消所有文件的修改
刪除文件
git rm a.php # 直接刪除文件
git rm --cached a.php # 刪除文件暫存狀態(tài)
移動文件
git mv a.php ./test/a.php
查看文件修改
git diff # 查看未暫存的文件更新
git diff --cached # 查看已暫存文件的更新
暫存和恢復當前staging
git stash # 暫存當前分支的修改
git stash apply # 恢復最近一次暫存
git stash list # 查看暫存內容
git stash apply stash@{2} # 指定恢復某次暫存內容
git stash drop stash@{0} # 刪除某次暫存內容
修改 commit 歷史紀錄
git rebase -i 0580eab8
分支管理
創(chuàng)建分支
git branch develop # 只創(chuàng)建分支
git checkout -b master develop # 創(chuàng)建并切換到 develop 分支
合并分支
git checkout master # 切換到 master 分支
git merge --no-ff develop # 把 develop 合并到 master 分支,no-ff 選項的作用是保留原分支記錄
git rebase develop # rebase 當前分支到 develop
git branch -d develop # 刪除 develop 分支
克隆遠程分支
git branch -r # 顯示所有分支,包含遠程分支
git checkout origin/android
修復develop上的合并錯誤
1.將merge前的commit創(chuàng)建一個分之挪鹏,保留merge后代碼
2.將develop reset --force到merge前月而,然后push --force
3.在分支中rebase develop
4.將分支push到服務器上重新merge
強制更新到遠程分支最新版本
git reset --hard origin/master
git submodule update --remote -f
Submodule使用
克隆帶submodule的庫
git clone --recursive https://github.com/chaconinc/MainProject
clone主庫后再去clone submodule
git clone https://github.com/webff/webff.github.o
git submodule init
git submodule update
Git設置
Git的全局設置在~/.gitconfig
中馋嗜,單獨設置在project/.git/config
下麸俘。
忽略設置全局在~/.gitignore_global
中辩稽,單獨設置在project/.gitignore
下。
設置 commit 的用戶和郵箱
git config user.name "xx"
git config user.email "xx@xx.com"
或者直接修改config文件
[user]
name = xxx
email = xxx@xxx.com
查看設置項
git config --list
設置git終端顏色
git config --global color.diff auto
git config --global color.status auto
git config --global color.branch auto