Git日常使用

Git概念介紹

Git描述

Git是一個開源的分布式版本控制系統(tǒng),分布式的含義是(它不需要服務器端軟件的支持)。另外,它不僅僅是一個版本控制系統(tǒng),也是一個內(nèi)容管理系統(tǒng)(CMS),工作管理系統(tǒng)。

Git與SVN的區(qū)別

  • 最核心區(qū)別,Git分布式的,SVN是集中式的;
  • SVN的版本號是全局唯一,Git的版本號可以說是全球唯一(基于文件內(nèi)容或目錄結(jié)構(gòu)等因素計算出的SHA-1哈希值,是一個40位的十六進制串);

Git的安裝使用(windows)

Git的簡單配置

  #配置用戶名
  git config --global user.name "test"
  #配置密碼
  git config --global user.password "123"
  #配置郵箱
  git config --global user.email "@email.com"
  #查看配置的參數(shù)
  git config --list

Git的公私鑰配置(GitLab或者GitHub)

  • 首先在本地生成公私鑰信息,使用命令:
      #生成公私鑰信息,按照提示輸入相關(guān)信息即可
      ssh-keygen -t rsa -C "your.email@example.com" -b 4096
    
  • 根據(jù)提示將生成的公鑰信息復制出來,然后去gitlab或者gitHub中,將公鑰復制進去。


    gitlib公鑰配置頁面.png

Git的命令說明

  • git常用命令

      #初始化文件夾,初始化后,對應目錄會出現(xiàn)一個.git隱藏目錄
      git init
      #查看當前git工作區(qū)域的狀態(tài)信息,新建文件,狀態(tài)為untracked
      git status
      #將文件加入“暫存區(qū)”,文件狀態(tài)由untracked變?yōu)閟taged
      #增加多個文件時,使用空格隔開即可
      git add fileName
      #將文件加入“版本庫”,文件狀態(tài)由stage變?yōu)閡nmodified
      git commit fileName
    
    常用命令.png
  • git幾個工作區(qū)概念介紹

    • 工作區(qū)
      上面demo中,我們對gittest目錄進行初始化以后,gittest這個目錄就相當于我們的工作區(qū),在此目錄下新增文件等操作,使用git status查看時,都處于untracked狀態(tài)。
    • 暫存區(qū)
      臨時存放我們的改動,對于我們修改的文件內(nèi)容,采用git add操做以后,進入此區(qū)域;
    • 版本庫
      安全存放數(shù)據(jù)的位置,里面存儲有提交的所有版本信息,使用git commit后,會有l(wèi)og信息記錄相關(guān)版本。
  • git分支管理

      #創(chuàng)建分支
      git branch branchName
      #切換分支
      git checkout branchName
      #列出分支列表
      git branch
      #刪除分支
      git branch -d branchName
      #分支合并(合并產(chǎn)生的沖突需要手工解決)
      #此命令執(zhí)行需要在執(zhí)行合并后的分支代碼
      #如要將test分支合并到Master分支,需要處于master分支執(zhí)行此命令
      git merge branchName
    
分支管理.png
  • git歷史查看
      #查看歷史提交記錄
      git log
      #查看歷史提交記錄的簡潔版本
      git log --oneline
      #查看某個用戶的提交記錄
      git log --author "authorName"
    
    git歷史記錄.png
  • git remote遠程操作命令
      #查看配置的遠程倉庫服務器(一般是origin,不是很懂這個的作用)
      git remote
      #讀寫遠程倉庫使用的Git的簡寫和URL
      git remote -v
      #查看遠程倉庫的信息
      git remote show origin
      #將改動推送到遠程服務器
      git push remote-Name branchName
    
  • git rm相關(guān)操作
      #將文件從暫存區(qū)移入到工作區(qū)
      git checkout  fileName
      #將某個文件從版本區(qū)恢復到暫存區(qū)(HEAD相當于某一個版本,可以版本ID)
      git reset HEAD fileName
      #將某個文件從版本區(qū)恢復到工作區(qū)
      git checkout HEAD fileName
    
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容