Git是一個開源的分布式版本控制系統,用以有效、高速的處理從很小到非常大的項目版本管理。
1. clone
$git-clone git://<url> #獲得git倉庫
2. pull
$git-pull #更新倉庫
3. config #git倉庫配置相關信息
$git-config user.name <your name>
$git-config user.email <your mail>
$git-config core.editor vim
$git-config core.paper “less -N”
$git-config color.
diff true
$git-config alias.co checkout #表示git co代表git checkout.
$git-var -l #可以查看已經設置的配置
4. diff
$git-diff tag #比較tag和HEAD之間的不同
$git-diff tag
file #比較一個文件在兩者之間的不同
$git-diff tag1..tag2 #比較兩個tag之間的不同
$git-diff SHA11..SHA12 #比較兩個提交之間的不同
$git-diff tag1 tag2 file or git-difftag1:file tag2:file #比較一個文件在兩個tag之間的不同
$git-diff ORIG_HEAD #ORIG_HEAD用於指向前一個操作狀態,獲得git-pull之後的pull的內容
$git-diff –stat #用於生成統計信息
$git-diff –stat ORIG_HEAD
5. apply (待完善)
$git-apply #相當於patch命令
$git-apply –check #檢查能否正常打上補丁
$git-apply -v #verbose模式
$git-apply -R #reverse模式,反打補丁
6. log
$git-log file #查看一個文件的改動
$git-log -p #查看日志和改動
$git-log tag1..tag2 #查看兩個tag之間的日志
$git-log -p tag1..tag2 file #查看一個文件在兩個tag之間的不同
$git-log tag.. #查看tag和HEAD之間的不同
7. commit
$git-commit -a -e #提交全部修改文件,並調用vim編輯提交日志
$git-reset HEAD^ or git-reset HEAD~1 #撤消最後一次提交
$git-reset –hard HEAD^ #撤消最後一次提交並清除本地修改
$git-reset SHA1 #回到SHA1對應的提交狀態
8. add、delete、ls
$git-add -a #添加所有文件,(.gitignore文件中的文件除外)
$git-rm file #從git倉庫中刪除文件
$git-commit #添加或是刪除後要提交
$git-ls-files -m #顯示修改過的文件
$git-ls-files #顯示所有倉庫中的文件
9. git中有四種對象:blob(代表文件)、tree(代表目錄)、commit(代表提交歷史)、tag(代表標簽)。
這四種對象都是由SHA1值表示。在倉庫中的.git目錄中保存git管理倉庫所需要的全部信息。
$git-ls-tree HEAD <file> #顯示file在HEAD中的SHA1值,SHA1是一連串16進制數組成
$git-
cat-file -t <SHA1> #顯示一個SHA1的類型
$git-cat-file <type> <SHA1> #顯示一個SHA1的內容。type是blob、tree、commit、tag之一。
10. patch
$git-format-patch -1 #生成最後一個提交對應的patch文件
$git-am < <patch> #把一個patch文件加入git倉庫中
$git-am –resolved #如果有沖突,在解決沖突後執行
$git-am –skip #放棄當前git-am所引入的patch
11. conflict(沖突)
$git-merge #用於合並兩個分支
$git-diff #如果有沖突,直接使用diff查看
$git-update-index #更新修改後的文件狀態
$git-commit -a -e #提交為解決沖突而修改的代碼
12. branch
$git-branch -a #查看所有分支
$git-branch <new_branch> #創建新的分支new_branch
$git-branch -d <branch> #刪除分支branch
$git-checkout <branch> #切換當前分支。
13. daemon
$git-pull git://url #直接更新每個人的代碼
$git-daemon –verbose –export-all –enable=receive-pack –base-path=/repo
14. request-pull
$git-request-pull start url #用於產生本次pull請求的統計信息
15. clean
$git-clean -dxf #用於清除未跟蹤文件
$git-clean -dnf #用於顯示需要刪除的文件,但不包括被.gitignore忽略的。
$git-reset –hard HEAD #用於清除跟蹤文件的修改
http://www.linuxeye.com/
Linux/792.html