前言 GIT命令眾多褂傀,在此僅是記錄備忘而已榄鉴。先上圖片鎮(zhèn)樓柒室。哈哈渡贾,文末有福利,可免費(fèi)下載git 指令速查表和和破解版beyond compare
工欲善其事雄右,必先利其器
常用設(shè)置
# 設(shè)置提交代碼時(shí)的用戶信息空骚、
$ git config [--global] user.name "[name]"
$ git config [--global] user.email "[email address]"
# 讓Git顯示顏色,突出新增文件擂仍,改變的文件等
$ git config --global color.ui true
設(shè)置別名囤屹,讓git更高效
$ git config --global alias.st status
$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch
設(shè)置difftool和mergetool讓git飛起
//針對Git 2.3和更新
1.啟動Beyond Compare,進(jìn)入Beyond Compare菜單并運(yùn)行安裝命令行工具逢渔。
2.在終端中指定difftool
$ git config --global diff.tool bc3
3.在終端指定mergetool:
$ git config --global merge.tool bc3
$ git config --global mergetool.bc3.trustExitCode true
使用
$ git difftool file.ext
$ git mergetool file.ext
更多參考Beyond Compare設(shè)置
您或者會問設(shè)置過這么多怎么查看生效沒肋坚,簡單只需要執(zhí)行命令
$ git config --list
或者在mac電腦
Command + Shift + .
在 Finder 中顯示隱藏文件然后查看比如我的電腦查看
/Users/zhulk/.gitconfig
接下來實(shí)戰(zhàn)
首先檢出或上傳代碼(在git未建立關(guān)聯(lián)前)
//默認(rèn)下載master分支
$ git clone [url]
//檢出指定遠(yuǎn)程分支
$ git clone -b xxxx [url]
//第一次上傳本地到git,首先建立遠(yuǎn)程關(guān)聯(lián),首次推送一定要加上 -u
$ git remote add origin [url]
$ git push -u origin master
接下里就能和其他小伙伴一起玩耍啦智厌,不過為了更好的玩耍粟判,先介紹以下三個(gè)小弟:
1.stash
暫存區(qū),當(dāng)我們項(xiàng)目做一半后峦剔,boss突然來了其他需求或者bug档礁,你不得不暫時(shí)把你未完的工作存起來,解決后然后恢復(fù)繼續(xù)工作吝沫。常用指令如下:
//把未完工作暫存
$ git stash
//查看所有暫存
$ git stash list
//找回暫存呻澜,繼續(xù)工作
$ git stash pop 或者 $ git stash apply
$ git stash pop 或者 $ git stash drop stash@{0}
2.branch
一般項(xiàng)目,需要構(gòu)建不同的分支惨险,一般分為集成分支羹幸、功能分支和修復(fù)分支,分別命名為 develop辫愉、feature 和 hotfix栅受。常用命令:
//查看本地所有分支,有*號代表當(dāng)前分支
$ git branch
//創(chuàng)建不存在的dev分支并切換到dev:
$ git checkout -b dev
//檢出已經(jīng)存在的master分支
$ git checkout master
//合并dev分支到master分支
$ git merge dev
//刪除dev分支
$ git branch -d dev
3.一次完整提交流程恭朗,好了接下來和小伙伴玩耍一次屏镊,來回拉取和提交代碼
// 添加指定文件
$ git add [文件名]
// 添加所有文件
$ git add .
//提交
$ git commit -m "注釋"
//修改上次的提交注釋
$ git commit --amend
//嘗試推送到服務(wù)器
$ git push
??如果push失敗并提示hint: Updates were rejected because the tip of your current branch is behind則執(zhí)行
//拉取遠(yuǎn)程最新代碼
$ git pull
??git pull也失敗了,提示There is no tracking information for the current branch.
說明本地和遠(yuǎn)程分支沒關(guān)聯(lián)痰腮,git跟蹤不到而芥,需根據(jù)提示設(shè)置關(guān)聯(lián) 比如本地dev和origin/dev的鏈接:
//建立本地和遠(yuǎn)程分支的鏈接
$ git branch --set-upstream dev origin/dev
//在拉取遠(yuǎn)程代碼
$ git pull
如果有沖突則需先解決沖突,然后再執(zhí)行add-commit-push等命令
//再次推送到服務(wù)器
$ git push
4.git指針
每次提交都會生成一個(gè)commit id膀值,并指向當(dāng)前棍丐,如果我們覆蓋了別人的代碼,或者提交錯(cuò)誤了沧踏,可以通過修改提交id歌逢,讓代碼回退,或者指向某次提交翘狱。
常用命令:
//查看提交記錄,顯示commitid秘案,Author等信息
$ git log
// 指向某個(gè)版本
$ git reset --hard [commId]
關(guān)聯(lián)多個(gè)遠(yuǎn)程,關(guān)聯(lián)代碼
//關(guān)聯(lián)GitHub的指定url
$ git remote add github [url]
// 查看關(guān)聯(lián)的版本
$ git remote -v
??由于現(xiàn)在關(guān)聯(lián)了多個(gè)遠(yuǎn)程分支盒蟆,所以我們在pull和push相關(guān)操作時(shí)需要指明操作的具體分支踏烙;
//如推送到遠(yuǎn)程github develop分支上
$ git pull github develop
$ git push github develop
一般穩(wěn)定后,每次發(fā)布后都會打tag历等,方便以后找回,修改未知bug等辟癌。
//打tag
$ git tag v1.0
查看所有標(biāo)簽
$ git tag
//刪除 標(biāo)簽
$ git tag -d v0.1
//推送標(biāo)簽到遠(yuǎn)程
$ git push origin v1.0
寫在最后寒屯,如果你不習(xí)慣命令行,當(dāng)然你也可以使用可視化工具,比如 常用的
sourcetree
tower
資源
下載git速查表
鏈接:https://pan.baidu.com/s/1F0DLQ29UJ27v_YSHt7Cyow 密碼:1huw
Beyond Compare破解下載
鏈接:https://pan.baidu.com/s/1n8siuZpDZObmEsw0aE7S3Q 密碼:80t8