天天看點

git 基本指令和分支管理1. 寫在前面2. git 基本使用流程和指令3. git 分支管理流程與指令

文章目錄

  • 1. 寫在前面
  • 2. git 基本使用流程和指令
    • 2.1 git 基本使用流程
    • 2.2 git 基本指令
      • 賬号檢視/設定相關
      • 代碼拉取
      • 檢視倉庫狀态
      • 檢視代碼/檔案和遠端和差別
      • 将代碼送出到暫存區
      • 将代碼送出到本地版本倉庫
      • 将代碼推送到遠端版本倉庫
    • 2.3 git 其他指令
      • git pull
      • git rm
      • git mv
      • git reset
  • 3. git 分支管理流程與指令
    • 3.1 分支管理流程
    • 3.2 分支管理指令
      • 拉取指定分支
      • 建立并切換到新分支
      • 切換指定分支
      • 送出代碼到指定的分支
      • 合并分支
    • 3.3 分支其他指令
      • 檢視分支
      • 檢視分支詳情
      • 檢視分支與遠端的關聯
      • 根據關鍵字檢視分支

1. 寫在前面

  本文主要介紹git基本指令和淺顯的分支相關内容,目的是能夠快速上手,并且在不熟悉的情況下,對代碼倉庫代碼修改的送出影響降到最低,當然這也是正常開發流程需要遵循的規範。

2. git 基本使用流程和指令

2.1 git 基本使用流程

  使用流程如下:

  代碼送出流程如下:

2.2 git 基本指令

賬号檢視/設定相關

  用于檢視/修改,使用者名/郵箱。

git config user.name
git config user.email
git config --global user.name "xxx"
git config --global user.email "xxx"  
           

代碼拉取

  用于拉取遠端代碼倉庫的代碼。

# 克隆master
git clone url

# 克隆指定分支
git clone -b <name> url
           

檢視倉庫狀态

# 查詢倉庫目前的狀态
git status
           

檢視代碼/檔案和遠端和差別

  修改代碼後,送出前先進行代碼/檔案狀态确認

# 查詢目前分支下,檔案内容和遠端的差別
git diff

# 查詢目前分支下,制定檔案的内容和遠端的差別
git diff xx.py
           

将代碼送出到暫存區

  确認修改的代碼沒有問題後,進行代碼送出。

  在送出之前,Git有一個暫存區

staging area

,可以放入新添加的檔案或者加入新的改動。

  

commit

時送出的改動是上一次加入到

staging area

中的改動,而不是我們

disk

上的改動。

# 會遞歸地添加目前工作目錄中的所有檔案
git add .

# 添加制定檔案
git add xx.py

# -u 選項會更新已經追蹤的檔案和檔案夾
git add -u newfolder
           

将代碼送出到本地版本倉庫

  送出已經被

add

進暫存區的改動。

将代碼推送到遠端版本倉庫

  推送已經被

commit

進本地版本倉庫的改動到遠端的倉庫。

# 将本地主分支推到遠端(如無遠端主分支則建立,用于初始化遠端倉庫)
git push -u origin master
           

2.3 git 其他指令

git pull

# 抓取遠端倉庫所有分支更新并合并到本地
git pull

# 抓取遠端倉庫所有分支更新并合并到本地,不要快進合并
git pull --no-ff
           

git rm

# 删除檔案 rm
# 删除檔案夾 rm -r
git rm test.txt
rm 'test.txt'
git add test.txt
git commit -m "remove test.txt"
           

git mv

# 用于重命名檔案名
git mv -f oldfolder newfolder
           

git reset

  指令用于回退版本,可以指定退回某一次送出的版本。

# 先看一下add 中的檔案
git status

# 如果後面什麼都不跟的話 就是上一次add 裡面的全部撤銷了
git reset HEAD 

# 就是對某個檔案進行撤銷了
git reset HEAD XXX/XXX/XXX.java

# 回退到指定版本
git reset 052e  
           

3. git 分支管理流程與指令

3.1 分支管理流程

  分支管理流程如下:

3.2 分支管理指令

拉取指定分支

git clone -b <name> http://xxxxxx.git
           

建立并切換到新分支

切換指定分支

git checkout <name>

# 新的指令比以上指令更容易了解(新版本支援)
git switch <name>
           

送出代碼到指定的分支

合并分支

  該步驟一般由開發組長進行管理和控制。

# 切換到主分支
git checkout master

# 合并指定分支到目前分支
git merge <name>

# 推送分支相關調整到遠端分支
git push -u origin master

# 完成合并後,進行分支的删除
git branch -d <name>
           

3.3 分支其他指令

檢視分支

# 列出本地所有的分支
git branch

# 列出所有的分支(遠端和本地)
git branch -a
           

檢視分支詳情

# 檢視本地分支詳情
git branch -v

# 檢視所有分支詳情
git branch -av
           

檢視分支與遠端的關聯

  列出本地所有的分支, + hash 資訊 + 與遠端的關聯資訊

git branch -vv
           

根據關鍵字檢視分支

  其實就是結合

grep

指令進行篩選,不算标準指令,但是很有用。

git branch -a | grep xxx
           

  希望進行詳細學習了解的,可閱讀廖雪峰的git教程。