歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Git 使用及實戰教程

Git 使用及實戰教程

日期:2017/2/28 14:51:32   编辑:Linux教程

一、Git 簡介

Git是一個開源的分布式版本控制系統,用以有效、高速的處理從很小到非常大的項目版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。Linus 開始著手開發 Git 是為了作為一種過渡方案來替代 BitKeeper,後者之前一直是 Linux 內核開發人員在全球使用的主要源代碼工具。開放源碼社區中的有些人覺得 BitKeeper 的許可證並不適合開放源碼社區的工作,因此 Torvalds 決定著手研究許可證更為靈活的版本控制系統。盡管最初 Git 的開發是為了輔助 Linux 內核開發的過程,但是我們已經發現在很多其他自由軟件項目中也使用了 Git。例如,X.org 最近就遷移到 Git 上來了,很多 Freedesktop.org 的項目也遷移到了 Git 上。

現在很多IT公司可能用的都是CVS,那麼Git與CVS的區別在哪?git和svn最大的差異在於git是分布式的管理方式而svn是集中式的管理方式。

Git 與CVS 相比有如下優點:

支持離線工作;本地提交可以稍後提交到服務器上。

Git 提交都是原子的,且是整個項目范圍的,而不像 CVS 中一樣是對每個文件的。

Git 中的每個工作樹都包含一個具有完整項目歷史的倉庫。

沒有哪一個 Git 倉庫會天生比其他倉庫更重要。

二、Git 基本概念、命令及其使用

2.1 Git 基本概念

1) Working Directory(工作目錄)

Git的工作目錄是保存當前正在工作的文件所在的目錄,和working tree是相同的意思。在這個目錄中的文件可能會在切換branch時被GIT刪除或者替換。這個目錄是個臨時目錄,臨時存儲你從GIT庫中取出的文件,這些文件一直會被保存,直到下次提交。

2) GIT Directory(GIT庫目錄)

項目的所有歷史提交都被保存在了GIT庫目錄中,只要你不作回滾操作,它應該不會丟失。

3) GIT Index(Git索引)

Git index 可以看作是工作目錄和Git庫目錄之間的暫存區,和staging area是相同的意思。可以使用Git index構建一組你准備一起提交的改變。Git Index和Git Staging area是同一個意思,都是指已經被add的但尚未commit的那些內容所在的區域。最簡單的查看目前什麼內容在index中的方法是使用git status命令。http://www.linuxidc.com

命令中”Changes to be committed“中所列的內容是在Index中的內容,commit之後進入Git Directory。

命令中“Changed but not updated”中所列的內容是在Working Directory中的內容,add之後將進入Index。

命令中“Untracked files”中所列的內容是尚未被Git跟蹤的內容,add之後進入Index。

哪些操作能夠改變git index中的內容?

A). git add <path>...會將working directory中的內容添加進入git index。

B). git reset HEAD <path>...會將git index中path內容刪除,重新放回working directory中。

Copyright © Linux教程網 All Rights Reserved