git 操作命令總結

首先感謝廖雪峯老師的細心講解https://www.liaoxuefeng.com/wiki/896043488029600

本文只是自己的學習後的總結,沒什麼邏輯可言。

git add 文件名 

##把文件從工作區添加到暫存區,注意git add . 表示把工作區全部內容添加到暫存區

git commit -m "備註信息"

##把暫存區的內容提交到倉庫分支上

git status 

##查看倉庫狀態

git diff 文件名

##對比文件與分支上最新版本文件

git diff 版本ID --文件名

##對比文件與分支上指定版本文件

git log

##查看日誌

git log --pretty=oneline

##查看日誌,把每條日誌合併爲一行

git reset --hard head^

##回退到前一個版本,注意^在windows裏是特殊字符,需要加引號 git reset --hard head"^"

##這個--hard表示即回退本地文件,也回退commit信息,有興趣的可以研究下reset的三種方式

git reset --hard head~數字

##回退到此前第X個版本

git reset --hard head 版本ID 

##回退到指定版本,  版本id是每次commit時生成的,可在git log中查看

git reflog

##查看每個版本的操作日誌

git checkout --文件名

##撤銷工作區對某文件的修改

git reset 版本ID 文件名

##撤銷暫存區對文件的修改

git clone 倉庫地址 [別名]

##克隆倉庫到本地,默認與倉庫名稱一致,可以指定本地的名稱

git branch 

##查看分支列表

git branch 分支名

##新建分支

git branch -d 分支名

##刪除分支

git branch -D 分支名

##強制刪除分支,主要應用場景:分支已經提交了,再merge到主分支前決定不要了,就強制刪除。(很少用)

git checkout -b 分支名

##新建並切換到分支,也可以寫:git switch -c 分支

git checkout 分支名

##切換到分支,也可以寫:git switch 分支名

git merge 分支

##把分支合併到當前分支

git log --graph --pretty=oneline --abbrev-commit

##查看各分支提交日誌

git stash

##保存現場,當前工作區沒有開發完,又來一個優先級高的任務,此時工作區代碼不能提交,又不捨得刪除,就用git stash,把工作區內容先裝到一個存儲罐內,等新任務完成了,再從罐裏掏出來。執行git stash後,工作區就被還原到上次commit之後的狀態了。

git stash pop

##還原現場,新任務完成,從存儲罐裏掏出原來工作區修改的內容,並且此時把罐裏的臨時文件給刪除了

git stash apply

git stash drop

##這倆也是還原現場,apply表示還原現場,drop表示刪除罐裏的臨時文件

git stash list

##查看存儲罐裏的臨時文件

git cherry-pick 版本ID

##如果發現歷史中某次提交的內容與本次修改內容一樣,可以直接把該次提交拿過來並自動合併到當前分支上,注意在此之前應先把工作區的修改提交了

git push origin 分支名

##把本地項目推送到遠程的分支上

git pull 

## 從遠程分支拉取代碼

git checkout -b 分支名 origin/分支名

##創建一個與遠程相同的分支,通常兩個分支名相同,如果pull時提示沒有建立鏈接,執行下面命令

git branch --set-upstream 分支名 origin/分支名

 

git tag 標籤名  [版本ID]

##打標籤,默認是最新版本,也可以指定提交的ID號

git tag -a 標籤名 -m "描述"  版本ID

##添加描述

git  show 標籤名

##查看標籤信息

git tag 

##查看所有標籤

git push origin 標籤名

##推送標籤到遠程

git push origin --tags

##推送所有的標籤到遠程

git tag -d 標籤名

##刪除本地標籤

git push origin:refs/tags/標籤名

##刪除遠程標籤

git config --global alias.別名  原指令或"原指令組合"

##配置指令別名,這個很nb,可以自己百度下常用的別名

git config -l

##查看本地git的配置項

 

下面講一下搭建本地git倉庫和遠程庫

1.遠程庫

前提:你已經再github上註冊了一個賬戶,登錄成功,並且本地已經安裝過git了(沒有裝的自己百度就行,滿網都是)

a. 點擊右上角個人頭像,在出現的菜單中找“setting”,點擊“setting”,在新頁面的菜單中找“SSH***”開頭的菜單(目前叫SSH and GPG keys,之前叫這個,不知道以後改不改),然後右面點“new SSH key”,出現倆字段的表單,title自己隨意起,key很重要,先留着往下看。

b.在本地自己喜歡的 目錄下“右鍵”--“git bash”,然後在打開的命令行中執行'ssh-key-gen -t rsa -C "自己的郵箱地址"'(這個郵箱跟github沒關係,寫自己的哪一個都行,當然寫別人的也無所謂),回車,會讓給密鑰起個名字(建議id_rsa_自己github用戶名),然後一路回車(不用設置密碼),這就完成了,在當前目錄下有倆文件生成,".pub"結尾的是公鑰,另一個是私鑰,選中公鑰文件,用記事本打開,全選,複製,粘貼到a中提到key字段的表單中,點擊ADD SSH KEY。至此,自己電腦就有權限操作github上的遠程庫了。那個放密鑰的文件夾是可以移動的(不用不敢碰,我試了,你也可以刪除了試試,來告訴我啥後果)。

c.接下來就是github上新建個資源庫:還是右上角,點擊頭像旁邊的“+”,出現的菜單中點擊“new repository”,新出現的表單中,輸入個名字,描述想輸就輸,其他默認,點確定,就ok了。遠程庫建完了。

 

2.本地倉庫

前提:安裝過git了哈

a.找個目錄,新建個文件夾,文件夾名即爲本地倉庫名

b.兩種方式:一是直接從遠程庫clone,上面有clone的命令,clone完成本地庫就創建完了,也與遠程庫建立了聯繫,沒啥好講的了;主要是第二種:先建本地倉庫,再與遠程倉庫建立聯繫,下面步驟都是基於第二種的哈。

c.打開cmd窗口,切換到倉庫目錄下,執行“git init”,本地庫就創建完成了。

d.接着執行“git remote add origin https://github.com/github用戶名/github倉庫名.git”,此時本地庫與遠程庫建立了聯繫。

e.接着執行(其實是第一次推送時執行,不是非要馬上接着上面執行)“git push -u origin master”,這一步是把本地庫的內容推送到遠程庫上,-u讓兩個庫以後可以相互交流,pull/push 都不用再加-u了。

到此就完事了,本地庫無論哪種方式創建完成時,文件夾內會出現".git"文件夾。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章