1.用戶名和郵箱
git config --global user.name "zty"
git config --global user.email "123456789@qq.com"
以上進(jìn)行了全局配置,當(dāng)在有些時(shí)候我們的某一個(gè)項(xiàng)目想要特定的郵箱,這個(gè)時(shí)候需要切換到你的項(xiàng)目,以上代碼把--globa去掉 再?gòu)男聢?zhí)行一遍就好了
2.alias(別名)
Git命令簡(jiǎn)單的縮寫輸入
git config -- global alias.co checkout? ?#別名? ?------>git co
git config --global alias.psm 'push origin master' ------> git psm
***log更清晰 git config -- global alias.lg "git log--graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'--abbrev-commit --date=relative"
3.diff
git diff? 查看改動(dòng)只能查看當(dāng)前文件和暫存區(qū)文件差異,暫存區(qū)就是還沒(méi)執(zhí)行 git add 的文件,還可以比較兩次commit之間的差異
git diff? <$id> <$id2>? #比較兩次提交間的差異
git diff <branch1> <branch2> #兩次分支之間的比較
git diff --staged #比較暫存區(qū)和版本庫(kù)差異
4.checkout? 切換分支和tag 還有撤銷
git checkout a 切換a分支
git checkout v1.0? ?切換版本v1.0的分支
?git checkout abajbdasidbiuasbdiasgd? $后面一長(zhǎng)串是commit_id 是SHA1值可有g(shù)it log 看到
git checkout a.md? checkout命令只能撤銷還沒(méi)有add進(jìn)暫存區(qū)的文件
5.stash
git stash? 把當(dāng)前分支所有沒(méi)有commit的代碼先暫存起來(lái)
git status 你會(huì)發(fā)現(xiàn)暫存區(qū)有了一條記錄,這時(shí)就可以去其他分支修改bug
git stash apply? 代碼還原 然后需要stash刪除記錄? ?--->? git stash drop 把最近一條stash記錄刪除
git stash pop 不但把代碼還原 還把記錄刪除了
git stash list 來(lái)確認(rèn)是不是已經(jīng)沒(méi)有記錄了
git stash clear 清空所有暫存區(qū)的記錄
6. merge & rebase
合并分支? git checkout master 切換分支? ? ? ?git merge a 合并分支
rebase 也是合并的意思?git checkout master 切換分支? ? ? ?git rebase a 合并分支
merge后可以看出是哪個(gè)分支的? rebase后重新排序 很難分辨
7,解決沖突
多人同時(shí)改動(dòng)同一文件會(huì)有智能的提示 conflicts
選取優(yōu)化的代碼保留 把其余代碼以及標(biāo)志符去掉