1. 程式人生 > >Github學習(talk is cheap,show me the code. -Linus)

Github學習(talk is cheap,show me the code. -Linus)

  • 功能(分散式)
    1.協同修改,多人並行的修改伺服器端的同一個檔案
    2.資料備份,不僅儲存目錄和檔案的當前狀態,還能夠儲存每一個提交過的歷史狀態。
    3.版本管理,不儲存重複資料。
    4.許可權控制
    5.歷史記錄
    6.分支管理,允許開發團隊在工作過程中多條生產線同時推進任務,進一步提高效率。
  • 本地庫初始化
git init  本地庫初始化,建立.git目錄
git add

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
.git目錄中存放的是本地庫相關的子目錄和檔案,不要刪除,不要胡亂修改

  • 設定簽名區分不同開發人員的身份,就近原則,專案級別優先於系統使用者級別!兩者必須設定一個。
    使用者名稱:
    Email地址:
    專案級別/倉庫級別(僅在當前本地庫範圍內有效) :
    系統使用者級別(登入當前作業系統的使用者範圍):
git config user.name +
git config user.email + 
git config --global user.name +
git config  --global user.email +

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

  • git status狀態檢視,檢視工作區、暫存區

  • git add新增,將工作區的修改、新建新增到暫存區

  • git commit提交操作,將暫存區的內容提交到本地庫

  • git log檢視歷史記錄,完整形式。對屏顯示控制方式:空格向下翻頁、b向上翻頁、q退出。
    在這裡插入圖片描述

  • git log --pretty=oneline 一行顯示,只顯示過去的。
    在這裡插入圖片描述

  • git log --oneline 縮短了雜湊值
    在這裡插入圖片描述

  • git reflog 顯示到某個版本指標需要移動的步數 HEAD ->為指標,全部顯示。
    在這裡插入圖片描述

  • git reset --hard + 雜湊值
    版本前進後退
    在這裡插入圖片描述

  • ^符號 git reset --hard HEAD^只能後退,退幾步就需要幾個異或符號。

  • ~符號 git reset --hard HEAD~3,退幾步數字就為多少。

  • –soft/–mixed/–hard
    soft僅在本地庫移動指標
    mixed在本地庫移動指標,重置暫存區。
    hard在本地庫移動指標,重置暫存區、重置工作區。

  • 刪除檔案找回(檔案存在時的狀態提交到了本地庫),就是版本的回退。刪除操作提交到本地庫刪除恢復:git reset --hard [指標記錄]

    、刪除操作未提交到本地庫git reset --hard HEAD

  • 比較檔案差異

git diff +檔案  //工作區的檔案和暫存區比較
git diff [本地庫中歷史版本] +檔名   //將工作區的檔案和本地庫歷史記錄比較。不帶檔名,比較多個檔案

分支操作

  • 建立分支git branch +[分支名]
  • 檢視分支git branch -v
  • 切換分支git checkout [分支名]
  • 合併分支
    切換到接受修改的分支上、執行
git checkout +需合併分支名
git merge +修改後的分支名
  • 解決衝突
    衝突的表現為特殊符號包圍的檔案,手動解決衝突,刪除特殊符號,修改後儲存退出。然後執行:
git add [檔名]
git commit -m "[日誌資訊]"

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

  • 克隆
    完整的把遠端庫下載到本地,建立origin遠端地址別名,初始化本地庫。
git clone git https://github.com/zhangxuhui1992/GitTest.git