git常用命令整理
Git 常用命令
備注:此文檔整理的內(nèi)容只針對(duì)git命令的通常用法和注意事項(xiàng),若要查看詳細(xì)使用說(shuō)明請(qǐng)參考:
man git cmd-name 或 git cmd-name --help
?
| 命令名稱 | clone |
| 通常用法 | git clone git@git.chinahisu.com:shanxigaoqing/midware_main.git??(使用默認(rèn)倉(cāng)庫(kù)名) 若要自定義倉(cāng)庫(kù)名,只需在末尾處加上自定義的名稱即可。 |
| 使用說(shuō)明 | 復(fù)制服務(wù)器端的代碼到本地當(dāng)前目錄中(與服務(wù)器交互),clone下來(lái)的庫(kù)只包含服務(wù)器端庫(kù)的當(dāng)前工作分支,其他分支并不會(huì)一并clone下來(lái)。 |
?
?
| 命令名稱 | add | |
| 通常用法 | git add filename??(添加或更新單個(gè)文件到索引庫(kù)) git add directory ?(添加或更新目錄到索引庫(kù),包含目錄下所有的文件) git add .??(添加或更新當(dāng)前目錄下所有文件到索引庫(kù)) | |
| 使用說(shuō)明 | 此命令主要用于將我們想要提交的文件添加或更新到索引庫(kù)中,然后通過git commit命令提交到本地倉(cāng)庫(kù)中,使用此命令時(shí),注意查看工程根目錄下是否有.gitignore文件,如果沒有,記得一定要手工添加上,否則你會(huì)受到鄙視的,因?yàn)榇宋募怯脕?lái)過濾那些不想提交的文件用的,寫好此文件以后就可以直接敲: git add . 命令而不用擔(dān)心把不必要的文件一同提交了。 ? .gitignore文件的寫法范例:
? |
?
| 命令名稱 | status |
| 通常用法 | git status ???(常規(guī)顯示) git status -s ?(簡(jiǎn)短顯示) |
| 使用說(shuō)明 | 此命令主要用來(lái)查看文件狀態(tài),在commit前使用status命令查看一遍文件狀態(tài)是一個(gè)好習(xí)慣。 |
?
?
| 命令名稱 | commit |
| 通常用法 | git commit (需要在打開的文本編輯器里填寫注釋,否則無(wú)法提交) git commit -m “l(fā)og-info” (這樣就不需要在文本編輯器里填寫了,二者選其一) git commit -a (跳過add直接提交,但不會(huì)提交新添加的文件) |
| 使用說(shuō)明 | 使用此命令前,請(qǐng)一定要確認(rèn)還有什么修改過的或新建的文件還沒有 git add 過,否則提交的時(shí)候不會(huì)記錄這些還沒暫存起來(lái)的變化。所以,每次準(zhǔn)備提交前,先用 git status 看下,是不是都已暫存起來(lái)了,然后再運(yùn)行此命令; 有時(shí)候我們提交完了才發(fā)現(xiàn)漏掉了幾個(gè)文件沒有加,或者提交信息寫錯(cuò)了,想要撤消剛才的提交操作,可以使用 --amend 選項(xiàng)重新提交。 |
?
| 命令名稱 | checkout |
| 通常用法 | git checkout branch-name (切換到指定分支) git checkout -b branch-name (創(chuàng)建一個(gè)分支并切換過去) git chechout filename (從暫存區(qū)檢出指定的文件覆蓋工作區(qū)中相應(yīng)的文件) git checkout branch-name filename (從指定分支中檢出指定文件到當(dāng)前分支中,同時(shí)覆蓋暫存區(qū)和工作區(qū)) |
| 使用說(shuō)明 | 略 |
?
| 命令名稱 | branch |
| 通常用法 | git branch (列出本地已經(jīng)存在的分支,并且在當(dāng)前分支的前面加“*”號(hào)標(biāo)記) git branch -a (列出所有存在的分支,包含本地和遠(yuǎn)程) git branch branch-name (基于當(dāng)前分支創(chuàng)建一個(gè)新的分支,分支命名建議:br-name) git branch -d branch-name (刪除分支,強(qiáng)制刪除請(qǐng)使用 -D ) git branch -m old-name new-name (重命名分支, 強(qiáng)制重命名請(qǐng)使用 -M ) |
| 使用說(shuō)明 | ? |
?
| 命令名稱 | fetch |
| 通常用法 | git fetch (拉取已關(guān)聯(lián)的遠(yuǎn)程倉(cāng)庫(kù)中所有的分支數(shù)據(jù),并在本地建立對(duì)應(yīng)的副本) git fetch remote-repository (拉取指定的遠(yuǎn)程倉(cāng)庫(kù)下所有分支數(shù)據(jù)) git fetch remote-repository?remote-branch (拉取指定遠(yuǎn)程倉(cāng)庫(kù)的指定分支到FETCH-HEAD) git fetch remote-repository?remote-branch:local-branch (拉取指定遠(yuǎn)程倉(cāng)庫(kù)中的指定分支到本地指定分支中,如果指定的本地分支不存在則創(chuàng)建它,若已存在則根據(jù)情況進(jìn)行合并) |
| 使用說(shuō)明 | ? |
?
?
| 命令名稱 | diff |
| 通常用法 | git diff (比較工作區(qū)和暫存區(qū)) git diff --staged/cached (比較暫存區(qū)和倉(cāng)庫(kù)) git diff HEAD (比較工作區(qū)和倉(cāng)庫(kù)) git diff branch-name (比較當(dāng)前分支工作區(qū)與指定分支的差異) git diff branch1 branch2 (比較兩個(gè)分支) git diff commit1 commit2 (比較兩個(gè)不同的提交版本) |
| 使用說(shuō)明 | Diff命令的輸出不是很通俗易懂,個(gè)人建議用difftool代替diff命令,difftool可以自定義比較工具,個(gè)人推薦meld工具,配置方式:git config --global diff.tool meld,配置好以后,就可以在合并不同分支之前先用difftool工具進(jìn)行修改,這樣在很多時(shí)候比用mergetool更實(shí)用。 |
?
| 命令名稱 | push |
| 通常用法 | git push remote-repository?:branch (刪除指定遠(yuǎn)程倉(cāng)庫(kù)中指定的分支) git push remote-repository?local-branch (推送指定分支到遠(yuǎn)程倉(cāng)庫(kù)中,若沒有對(duì)應(yīng)分支則創(chuàng)建它) git push remote-repository?local-branch:remote-branch (推送指定分支到遠(yuǎn)程倉(cāng)庫(kù)中的指定分支) |
| 使用說(shuō)明 | ? |
?
| 命令名稱 | 未完待續(xù) ...... |
| 通常用法 | ? ? |
| 使用說(shuō)明 | ? |
?
?
作者:潘洪銀
地址:http://www.cnblogs.com/panhongyin
轉(zhuǎn)載于:https://www.cnblogs.com/panhongyin/p/5586628.html
總結(jié)
- 上一篇: ASP.NET Core 中文文档 第二
- 下一篇: 关于android ksoap获取失败的