1. git fetch --prune ? ? ? ? ? ? ? ? ? 清理遠(yuǎn)程沒有的本地分支
2. git branch -d ?branchName ? ?刪除本地分支
3. git branch |grep 'branchName' |xargs git branch -d ? ?批量刪除本地匹配到的branchName的git分支
4. git checkout -- file ?撤銷工作區(qū)的修改
5. gitconfigcore.ignorecasefalse讓git 對(duì)文件大小寫敏感
6. git 錯(cuò)誤 " bad index file sha1 signature fatal: index file corrupt"
解決方案: 刪除 .git/index , 執(zhí)行g(shù)it reset 命令
7. git reset --hard HEAD ?撤銷還沒commit的merge磁滚,或者放棄工作區(qū)的改動(dòng)
git reset --hard ?commit-id 回滾到commit-id
8. git reset HEAD 將文件從暫存區(qū)撤銷
9. git log 查看提交記錄
10. git reflog 查看所有操作記錄
11.?git push origin :branch-name 刪除遠(yuǎn)程分支
12. git push origin -u branch-name 將本地分支推送到遠(yuǎn)端并建立連接
13. git remote -v ?查看遠(yuǎn)程倉(cāng)庫(kù)地址
14. 設(shè)置用戶名和郵箱: git config --global username 'name' , ?git config --global email 'xxx@xxx.com'
15. ?在本機(jī)生成RSA, 公鑰: ssh-keygen -t rsa -C "you@email.com'
16. ?更改push 模式, git config -- global push.default simple 或者 git config --global push.default matching
17. ?查看提交日志: git log --oneline --graph -author='authorName'
18. ?查看某一個(gè)文件的提交日志: git log -p filename, git log -p 查看所有提交的詳細(xì)文件修改
19 . 查看某一個(gè)文件的某幾行提交日志: git log -L 1,10:filename
20. ?查看工作區(qū)某個(gè)文件所做的改動(dòng)與暫存區(qū)比較: git diff filename
21. ?查看暫存區(qū)和上次提交之間的區(qū)別: git diff -cached filename
22. ?刪除遠(yuǎn)程分支: git push origin :remote-branch
23. 比較當(dāng)前分支與另一個(gè)分支的文件差異: git diff branch-name fileName
24. 查看另一個(gè)分支上的某一個(gè)文件: git show branch-name:fileName
25. 合并另一個(gè)分支的某一次提交: git cherry-pick commitId
26. 修改最近的提交說明:git commit --amend -m 'commit description'
27. 顯示工作區(qū)根目錄 git rev-parse --git-dir
28. 相對(duì)于工作區(qū)根目錄的相對(duì)目錄:git rev-parse --show-prefix
29.顯示當(dāng)前目錄后退到工作區(qū)的根目錄深度:git rev-parse --show-cdup
30. 編輯git配置文件:項(xiàng)目配置git config -e ?全局配置 git config -e --global, 系統(tǒng)配置 git config -e --system
31. 獲取配置項(xiàng): git config core.ignorecase, 設(shè)置配置項(xiàng):git config core.ignorecase false
32. 創(chuàng)建版本庫(kù): git init 或者 git init dirname (創(chuàng)建工作區(qū)蛙婴,并在此目錄下創(chuàng)建版本庫(kù))
33. 設(shè)置別名: git config --global alias.st status , git conifg --global alias.ci commit