git基本命令及使用

基礎命令

  • git commit -m “note” 提交記錄
  • git branch xxx 創建分支
  • git branch -d xxx 刪除分支 git branch -D xxx 強制刪除分支
  • git checkout xxx 切換分支
  • git checkout -b xxx 創建並切換到分支

git merge

  • git merge 合併兩個分支併產生一個新的提交記錄,包含所有修改
    在這裏插入圖片描述
git merge bugFix

在這裏插入圖片描述

git checkout bugFix; git merge master

在這裏插入圖片描述

  • 如果在兩個不同的分支裏,對同一個文件的同一個部分進行了不同的修改,則會產生合併衝突
    在這裏插入圖片描述
    在這裏插入圖片描述
  • 打開衝突文件
    在這裏插入圖片描述
  • 修改內容來解決衝突
    在這裏插入圖片描述
    在這裏插入圖片描述

git rebase

  • git rebase 取出一系列提交記錄,複製並提交到別的地方
    在這裏插入圖片描述
git rebase master

在這裏插入圖片描述

git checkout master; git rebase bugFix

在這裏插入圖片描述

高級命令

  • HEAD 一般指向當前分支上最近的一次提交記錄,可通過git checkout改變
  • 相對引用:^ 向上移動一個提交記錄,~100 向上移動多個提交記錄
  • 絕對引用:git log 查看提交歷史的哈希值
  • git log -p -2 查看最近兩次提交併顯示內容差異
  • git reflog 記錄了所有的git命令操作

移動分支

  • git branch -f 分支強制移動到某個位置

在這裏插入圖片描述

git branch -f master HEAD~3

在這裏插入圖片描述

撤銷變更

  • git reset 將分支記錄回退幾個提交記錄,用於本地分支
    在這裏插入圖片描述
git reset HAED^

在這裏插入圖片描述

  • git revert,用於遠程分支
    在這裏插入圖片描述
git revert HEAD

在這裏插入圖片描述

  • c2‘和c1內容相同

實戰

  • git init 初始化
  • git remote add origin xxx.git 綁定遠程目錄
  • git clone xxx 克隆現有倉庫 默認是master分支
  • git branch 查看本地分支 -r 遠程分支 -a 所有分支
  • git status 查看文件狀態
  • git add xxx 跟蹤新文件
    在這裏插入圖片描述
    在這裏插入圖片描述
  • .gitignore文件裏記錄無需納入git管理的文件

遠程分支

  • git push 推送到遠程服務器
    在這裏插入圖片描述
  • git fetch 從遠程分支上拉取本地沒有的數據,但不會修改工作目錄中的內容
    在這裏插入圖片描述
  • git pull 將上述兩條命令合併爲一條
  • git push origin --delete xxx或者 git push origin : xxx 刪除遠程分支
  • git checkout -b 本地分支名 origin/遠程分支名 拉取遠程分支並創建本地分支
    在這裏插入圖片描述

git stash 暫存修改

在這裏插入圖片描述

壓縮提交記錄

  • 在開發中,可能提交了很多次代碼,真正合並代碼時,不希望有冗餘的提交記錄
    在這裏插入圖片描述

超級命令

git cherry-pick

  • 將某些提交按順序放在HEAD下
    在這裏插入圖片描述
git cherry-pick c2 c4

在這裏插入圖片描述

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