版權(quán)聲明:本文為博主原創(chuàng)文章马昙,未經(jīng)博主允許不得轉(zhuǎn)載鬼譬。
轉(zhuǎn)載請(qǐng)表明出處:http://www.reibang.com/p/65392b795ff4
前言
大家好,我是Cavalier,初次寫(xiě)博客,想先寫(xiě)一點(diǎn)簡(jiǎn)單的開(kāi)始寝姿。還在琢磨拿什么下手,就想起來(lái)每天都在用的Git划滋,所以先從Git開(kāi)始分享一下我的經(jīng)驗(yàn)饵筑。
下面進(jìn)入正題
在長(zhǎng)期的Git使用中,總結(jié)出了以下這些常用命令处坪,對(duì)于Git入門(mén)下面的命令就夠了根资。
1.git init
git 初始化一個(gè)倉(cāng)庫(kù)
2.git add file
git 加一個(gè)文件進(jìn)緩存區(qū),可添加多個(gè)文件
3.git commit -m "des xxxxxx"
commit 刷新緩存區(qū)且 -m是描述
4.git status
查看當(dāng)前的狀態(tài)
5.git reflog
查看所有提交的log,可以查看每次變動(dòng)的版本號(hào)同窘,方便查閱
6.git reset --hard HARD^
git的管理用的是一個(gè)HARD指針玄帕,指向的提交節(jié)點(diǎn)就是當(dāng)前版本,這句是指回滾到上次提交的版本
git reset --hard file
這里的xxxxx指的是版本號(hào)想邦,通過(guò)此命令可以回滾到指定版本
7.cat xxxx
xxxxx指的是文件全名裤纹,包括后綴,此命令查看文件內(nèi)容
8.git diff HEAD -- file
查看最新版本的xx文件與xx文件的對(duì)比
9.git reset HEAD file
把暫緩區(qū)的修改撤銷(xiāo)掉(unstage)丧没,重新放回工作區(qū)
10.git checkout -- file
丟棄工作區(qū)的修改
11.git rm
從git 工作區(qū)中刪除文件
12.ssh-keygen -t rsa -C "youremail@example.com"
默認(rèn)三個(gè)回車(chē)后即在命令目錄中生成了兩個(gè)文件鹰椒,一個(gè)沒(méi)有后綴名,一個(gè)后綴名為.pub的文件
在github中的
setting -> SSH Keys -> New Key
把.pub結(jié)尾的文件以文本文件打開(kāi)后復(fù)制到 key 的文本框中呕童,點(diǎn)擊 Add Key 就可以添加本地key到github了
13.git remote add origin git@server-name:path/repo-name.git
關(guān)聯(lián)本地目錄到遠(yuǎn)程庫(kù)
14.git push -u origin
第一次推送master分支中所有內(nèi)容漆际,
-u 參數(shù)是將本地的master分支推送到遠(yuǎn)程庫(kù)中的master分支,且把本地的master分支和遠(yuǎn)程master分支關(guān)聯(lián)起來(lái)夺饲,以后可以*
平時(shí)使用時(shí)如果有需要可以直接git push origin master就可以推送到遠(yuǎn)程庫(kù)
15.git clone you_repo_url
克隆遠(yuǎn)程庫(kù)
tips:使用ssh協(xié)議會(huì)比https速度快奸汇,因?yàn)閔ttps協(xié)議每次推送都需要口令,但要是部分公司只開(kāi)放http端口的钞支,就只能用https的
16.git branch
查看分支
17.git branch
創(chuàng)建分支
18.git branch -d
強(qiáng)行刪除分支
19.git checkout
切換分支
20.git checkout -b
創(chuàng)建且切換分支
21.git merge
合并某分支到當(dāng)前分支茫蛹,不建議使用
22.git log
查看分支情況
git log --graph
查看分支情況
git log --graph --pretty=oneline --abbrev-commit
查看一行分支提交情況
23.git merge --no-ff -m "des"
合并分支時(shí)不使用快速合并方式,因?yàn)樵趫F(tuán)隊(duì)中快速合并方式在log中看不出來(lái)
24.團(tuán)隊(duì)開(kāi)發(fā)中最好是分三條分支烁挟,一條是master分支婴洼,一條是dev分支,一條是個(gè)人分支撼嗓,mester分支是必須保持穩(wěn)定的柬采,dev是開(kāi)發(fā)合并的,在發(fā)布的時(shí)候?qū)ev和mester合并發(fā)布且警,而平時(shí)就個(gè)人和dev合并一下粉捻。
25.git stash
保存當(dāng)前分支當(dāng)前工作區(qū),以便后面恢復(fù)繼續(xù)
git stash apply????恢復(fù)分支斑芜,但是stash內(nèi)容不刪除
git stash drop?????刪除stash內(nèi)容
git stash pop????恢復(fù)并刪除stash內(nèi)容
git stash list????查看stash列表
tips:可以進(jìn)行多次git stash,利用git stash apply ????恢復(fù)到指定stash
26.git remote
查看遠(yuǎn)程庫(kù)信息
git remote -v
查看詳細(xì)遠(yuǎn)程庫(kù)信息
tips:如果沒(méi)有推送權(quán)限是不會(huì)顯示push路徑
27.git push origin
推送指定分支到遠(yuǎn)程分支
tips:如果提示"no tracking information"
說(shuō)明本地分支與遠(yuǎn)程分支的關(guān)系沒(méi)有創(chuàng)建肩刃,需要用git --set-upstream origin
28.git pull命令抓取分支
29.git tag
查看所有標(biāo)簽
git tag ????????設(shè)置當(dāng)前分支一個(gè)表簽名
git tag ????設(shè)置指定分支的commitId一個(gè)標(biāo)簽名
git tag -a -m "des" 創(chuàng)建帶有說(shuō)明的標(biāo)簽
git tag -s -m "des" 采用PGP簽名
git tag -d ?????????刪除標(biāo)簽
30.git show
查看tag文字說(shuō)明
31.git push origin
推送標(biāo)簽到遠(yuǎn)程庫(kù)
git push origin --tags
一次性推送未推送的標(biāo)簽到遠(yuǎn)程標(biāo)簽
tips:????如果標(biāo)簽已經(jīng)推送到遠(yuǎn)程分支,這時(shí)想刪除分支就只能先刪除本地標(biāo)簽,
再推送刪除標(biāo)簽git push origin :refs/tags/,置于是否刪除了遠(yuǎn)程庫(kù)的標(biāo)簽盈包,可以登錄遠(yuǎn)程庫(kù)查看
32.git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
配置 輸出簡(jiǎn)寫(xiě) 效果就是直接輸入git lg 即可看到當(dāng)前提交過(guò)的具體詳情
#結(jié)尾
博客結(jié)束沸呐,以上純屬個(gè)人經(jīng)驗(yàn),如有錯(cuò)誤請(qǐng)指出呢燥,謝謝崭添。
轉(zhuǎn)載請(qǐng)注明出處