冰河親自整理的 Git 命令彙總

大家好,我是冰河~~

Git 目前是各大互聯網公司使用的版本控制工具,進大廠,必須要學會 Git 的基本使用。這不,最近就有很多小夥伴私信我:冰河,可以幫我整理下 Git 的使用命令嗎?網上的太零散了,買書看又沒時間。我:可以啊!

於是乎,我熬夜整理了這篇文章。這篇文章主要是彙總講解 Git 的使用命令。

Git 的安裝

通過 https://git-scm.com/downloads  ,git 官網下載需要的版本,一路下一步安裝即可

裝好後,在電腦文件夾的任意位置右鍵,即可看到 git 相關的命令。

git bash 是命令行工具

git gui 是圖形化工具

打開 git bash 後,輸入 git --version ,能正確輸出版本號,則證明安裝成功。

基本命令

配置用戶名和郵箱

git config --global [user.name](http://user.name) ‘自己的名字’
git config --global [user.name](http://user.name) ‘自己的郵箱’

查看配置

git config --list --local
git config --list --global
git config --list --system

清除配置

git config --unset --local [user.name](http://user.name)
git config --unset --global [user.name](http://user.name)
git config --unset --system [user.name](http://user.name)

創建倉庫

進入要被託管的文件夾,執行

git init

添加文件至暫存區

git add 文件名

提交文件

git commit -m '描述'

查看 git 狀態

git status

查看修改內容

git diff 文件名

修改文件名字

git mv 原文件名   新文件名

查看日誌

功能爲查看日誌
git log

查看日誌,以單行顯示
git log --pretty=oneline

功能爲查看歷史操作記錄,比如回退版本後想要重返“未來”可以查看最新的提交版本
git reflog

通過可視化工具查看提交信息

gitk

版本回退

退回到上一個版本
git reset --hard head

當知道對應的版本號時,可以用這個命令,適用於回退和前往之前的新版本
git reset --hard 版本號

撤銷操作

新版本git提示用該命令進行撤銷
git restore 文件名

舊版本用此命令做撤銷,新版本也可以用
git checkout – 文件名

如果已經add進暫存區
git restore --staged 文件名

新版本git用該命令此爲舊版本git命令,新版本也可以用  
git reset head 文件名

刪除文件

git rm -f 文件名

使用分支

查看當前分支

git branch

創建 dev 分支並切換過去

-b表示創建並切換,相當於下面兩條命令
git checkout -b dev

創建分支
git branch dev

切換分支
git checkout dev

注意:上面是老版本的命令,創建分支和撤銷都用 checkout 容易分不清,因此新版本創建分支推薦用

switch
創建並切換到dev
git switch -c dev

直接切換到已有的dev分支
git switch dev

合併分支

將dev分支合併到當前分支,合併後會丟失原來分支的信息
git merge dev

合併dev到當前分支,–no-ff表示禁用fast forwad,之後查看日誌時是可以看到已被刪除分支的信息
git merge --no-ff -m “merge with no-ff” dev

刪除分支

git branch -d dev
git branh -D dev

如果 dev 沒有被合併過用大寫 -D

查看分支合併情況

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

stash 的使用(bug 分支)

保存當前的工作現場
git stash

查看所有被保存的工作
git stash list

恢復並刪除工作現場,等價於git stash apply + git stash drop
git stash pop

開發環境在 dev 分支下,bug 修復是提交在 master 中,如何快速合併至 dev 下:轉移至 dev 分支下,執行下面命令

git cherry-pick bug分支的提交版本號

遠程克隆到本地

git clone 自己的git項目地址

如果是本地沒有項目,從遠程往下拉項目則是克隆

關聯

git remote add origin 自己的git項目地址

如果本地先建好了項目,那麼執行這個命令將本地倉庫與遠程倉庫關聯

拉取遠程的更新

git pull

第一和遠程關聯上之後,在提交之前要先 pull 一下遠程的更新纔行

基本推送

第一次推送是要加上-u,可以把本地的master和遠程的master關聯起來,方便以後的推送或者拉取
git push -u origin master

之後推送可以直接用該命令
git push origin master

查看遠程倉庫信息

git remote

此命令可顯示更詳細信息
git remote -v

多人協作

標籤

基本操作

標籤的作用可以簡單理解爲給版本起名字

查看所有標籤
git tag

把當前分支的最新提交打上標籤,標籤名字自己起
git tag 標籤名

把某個版本號的提交打上標籤
git tag 標籤名 對應commit版本號

可以用這種方式給標籤增加說明,-a對應標籤名,-m對應描述信息
git tag -a v0.1 -m “描述信息” 版本號

查看標籤具體信息
git show 標籤名

刪除標籤
git tag -d 標籤名

推送標籤

推送某個標籤到遠程
git push origin 標籤名

推送所有標籤到遠程
git push origin --tags

刪除遠程標籤:
先刪除本地標籤
git tag -d 標籤名
 
然後從遠程刪除
git push origin: refs/tags/標籤名

冰河從一名普通程序員,短短几年時間,一路進階成長爲互聯網高級技術專家,一直致力於分佈式系統架構、微服務、分佈式數據庫、分佈式事務與大數據技術的研究。在高併發、高可用、高可擴展性、高可維護性和大數據等領域擁有豐富的架構經驗。對 Hadoop,Storm,Spark,Flink 等大數據框架源碼進行過深度分析,並具有豐富的實戰經驗。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/BojzCPOFRBktdCUtwX-Iww