首頁  >  文章  >  Java  >  什麼是Git? git的常用操作

什麼是Git? git的常用操作

零下一度
零下一度原創
2017-06-30 10:01:531734瀏覽

一 概述

1.什麼是Git?

Git是分散式版本控制系統。

2.集中式與分散式比較

# 在集中式版本控制系統中,版本庫集中在中央伺服器上,每次工作時都需要先從中央伺服器取得最新版本,修改後,再推送到中央伺服器,不僅受網路傳輸限制,而且一旦中央伺服器發生故障,版本庫可能全部遺失。而分散式版本控制系統,沒有中央伺服器,每一個工作電腦上都有一個完整的版本庫,任務操作都是基於本地文件,文件修改後,只需要推送給其他協作人即可,不僅擺脫了網路速度的限制,而且版本庫分佈在多台電腦上,更加安全。

3.Git工作原理

Git本機運算分成三個區域:

  • 工作區:本地倉庫中可見目錄均屬於工作區。

  • 暫存區:在「.git」資料夾中的index檔案中。

  • 版本庫:在「.git」資料夾中。

先執行「git add」指令將操作放到暫存區(Stage),再執行「git commit」將暫存區的檔案提交到版本庫。

4.快照

快照這個概念來自於照相領域,是一種快速記錄資訊的方式,載體體積小,幾乎包含了關心的全部訊息,Git英語原文對此介紹如下:

Every time you commit, or save the state of your project in Git, it basically takes a picture of what all your files look like at that moment and stores a reference to that snapshot.

可以將快照理解為一種簡單的記錄物件當前狀態的方式,這種方式雖然簡單,但卻包含了物件的全部資訊。

Git記錄的不是版本間的差異,而是每個版本的快照。

5.版本

版本是專案範疇的,代表了整個專案的狀態,其中一個檔案修改提交後,版本更新,其他未修改檔案的版本也隨之更新。

6.master

Git自動建立的主分支,只有該分支對其他使用者可見,其他分支對其他使用者不可見。

7.HEAD

指向工作區檔案所屬分支與版本。

二 分支

1.什麼是分支?

基於主幹的獨立發展脈絡,不影響主幹的發展。

2.建立分支

基於一個已有分支的某個版本建立新的分支。

3.分支合併

如果從共同的起點開始,兩個分支中只有一個分支A修改了文件,那麼將另一個分支的指標指向A分支當前的版本即可,合併後的檔案就是A目前版本。如果從共同的起點開始,兩個分支都修改了文件,那麼合併時會出現衝突,手動修整,然後將文件添加到緩衝區Add to Index,再commit。

一個分支合併了另一個分支,將產生一個新的版本。

三標籤

標籤的作用與commit id 相同,都是用來標記版本,commit id採用40位元字符,難以記憶,因此產生了一種簡化版本標記的方式,即標籤,給需要特殊關注的版本自定義一個容易記憶的名字,以便於以後查詢。

四 常用操作

  • #reset:退後到某一版本。

  • checkout:將工作區中的檔案轉換為某一個版本,選擇某個分支為活動分支。

這是我初次學習總結的東西,偏重Eclipse下的簡單操作,原理性東西太少,下面的連結講得比較詳細,可以深入學習:

以上是什麼是Git? git的常用操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn