廖雪峰Git學習筆記1-Git簡介

Celia_Tan發表於2020-12-22

Git的誕生

Linus用C語言寫的一個分散式版本控制系統。2008年,Github網站上線,為開源專案免費提供Git儲存。

集中式VS分散式

分散式版本控制系統沒有“中央伺服器”,每個人的電腦上都是一個完整的版本庫。
分散式的核心設計是同步,而不是主從。集中式和分散式的區別是:
你的本地是否有完整的版本庫歷史!
假設SVN伺服器沒了,那你丟掉了所有歷史資訊,因為你的本地只有當前版本以及部分歷史資訊。
假設GitHub伺服器沒了,你不會丟掉任何git歷史資訊,因為你的本地有完整的版本庫資訊。你可以把本地的git庫重新上傳到另外的git服務商。

版本控制就是即時commit每個版本,以便於在後面能及時查詢每個階段的版本。這個過程自己的電腦就能完成,而只有在Push和Pull的時候才需要聯網跟其他協作者同步更新。斷網的時候集中式版本控制系統SVN不工作。

建立版本庫/初始化倉庫

版本庫又名repository倉庫,可以理解為一個目錄,這個目錄裡面所有的檔案都可以被Git管理起來,每個檔案的修改、刪除,Git都能跟蹤,以便任何時候追蹤歷史or還願某個版本。

使用 git init命令把目錄變為一個Git可以管理的倉庫。此時該目錄下多了一個.git的目錄,這個語錄即用來管理版本庫,系統自動生成,不要手動修改。

$ git init
Initialized empty Git repository in D:/Git/.git/

把檔案新增到已經建立的倉庫中

Git作為版本控制系統,可以跟蹤txt、網頁、程式程式碼的改動。無法跟蹤Mictosoft的word改動。建議使用標準的UTF-8編碼。
雖然window的記事本是txt格式,但是記事板使用的是十六進位制編碼。

$ vi readme.txt 建立一個readme的txt檔案,按esc後:wq 儲存檔案並退出

$ git add readme.txt 將新建的txt檔案新增進Git倉庫

$ git commit -m “wrote a readme file” 使用git commit命令把檔案提交給倉庫,-m後面輸入的是本次提交的說明。(相當於一個改動說明。)結果顯示一個檔案被改動,插入了兩行內容。
[master (root-commit) b2525be] wrote a readme file
1 file changed, 2 insertions(+)
create mode 100644 readme.txt

新增檔案到Git倉庫,分兩步:
1、使用命令 git add 可反覆使用,新增多個檔案
2、使用命令 git commit -m 提交檔案

相關文章