Git-倉庫

三 Git 倉庫 git

    1.1Git 基本概念    服務器

        在Git中,咱們將須要進行版本控制的文件目錄叫作一個倉庫(repository),每一個倉庫能夠簡單理解成一個目錄,這個目錄裏面的全部文件都經過Git來實現版本管理,Git都能跟蹤並記錄在該目錄中發生的全部更新。spa

        如今咱們已經知道什麼是repository(縮寫repo)了,假如咱們如今創建一個倉庫(repo),那麼在創建倉庫的這個目錄中有一個「.git」的文件夾。這個文件夾很是重要,全部的版本信息,更新記錄,以及Git進行倉庫管理的相關信息3d

所有保存在這個文件夾裏面。因此,不要修改/刪除其中的文件,以避免形成數據的丟失。版本控制

        進一步的講解請參考下面一張圖,大概展現出了咱們須要瞭解的基本知識。指針

     

    根據上面的圖片,下面給出了每一個部分的簡要說明:對象

  • Directory:使用Git管理的一個目錄,也就是一個倉庫,包含咱們的工做空間和Git的管理空間。
  • WorkSpace:須要經過Git進行版本控制的目錄和文件,這些目錄和文件組成了工做空間,除了.git以外的都屬於工做區。
  • .git:存放Git管理信息的目錄,初始化倉庫的時候自動建立。
  • Index/Stage:暫存區,或者叫待提交更新區,在提交進入repo以前,咱們能夠把全部的更新放在暫存區。
  • Local Repo:本地倉庫,一個存放在本地的版本庫;HEAD會只是當前的開發分支(branch)。
  • Stash:是一個工做狀態保存棧,用於保存/恢復WorkSpace中的臨時狀態。

     有了上面概念的瞭解,下面簡單介紹倉庫的文件結構。blog

 

        該目錄下有可能還有其餘文件,但這是一個全新的 git init 生成的庫,因此默認狀況下這些就是你能看到的結構。新版本的 Git 再也不使用 branches 目錄,description 文件僅供 GitWeb 程序使用,因此不用關心這些內容。config 文件包含了項目特有的配置選項,info 目錄保存了一份不但願在 .gitignore 文件中管理的忽略模式 (ignored patterns) 的全局可執行文件。hooks 目錄保存了客戶端或服務端鉤子腳本。圖片

另外還有四個重要的文件或目錄:HEAD 及 index 文件,objects 及 refs 目錄。這些是 Git 的核心部分。ip

  • objects 目錄存儲全部數據內容
  • refs 目錄存儲指向數據 (分支) 的提交對象的指針,裏面即有stash棧指針以及tag等
  • HEAD 文件指向當前分支
  • index 文件保存了暫存區域信息

    1.2 簡單的代碼提交流程

        這裏不對每一條命令作詳盡的解釋,這些命令或相似命令貫穿咱們順利的一個完整提交,關於其餘狀況以及這些命令的詳細解釋留待後面敘述。

        (1)git status //查看工做區代碼相對於暫存區的差異,

        (2)git add . // 將當前目錄下修改的全部代碼從工做區添加到暫存區 . 表明當前目錄

        (3)git commit -m 「commit-message」 //將暫存區的代碼提交到本地版本庫

        (4)git push origin master // 將本地版本庫推送到遠程服務器,origin是遠程主機,master表示是遠程服務器上的master分支,分支名是能夠修改的。

相關文章
相關標籤/搜索