從頭開始建立一個版本庫,添加一些內容,而後管理一些修訂版本。html
有兩種創建 Git版本庫 的基礎技術。第一:從頭開始建立,用現有的內容填充它。第二:能夠克隆一個已有的版本庫。這裏選擇從一個空的版本庫開始比較簡單,如今開始吧!git
1,Git命令快速入門安全
這裏咱們從頭開始建立一個空的Git版本庫,並往版本庫中添加一個簡單的 index.html 文件。函數
才作步驟以下:工具
1-1,打開 Git Bash,進入到任意電腦目錄並建立一個目錄。好比版本庫建立在 D:\\GitTestRepos\\git003 下。spa
Git Bash 是Windows下的命令行工具,基於msys GNU。GNU環境,說明很好的支持Linux/unix的環境。命令行
1-2,執行 git init 命令,將git003目錄轉化成一個版本庫。git init 命令建立了一個隱藏的目錄,在版本庫的頂層目錄中名爲 .git 。Git將全部的修訂信息都該目錄中。3d
1-3,在版本庫中建立一個 index.html 文件。而後執行名 git add <file|path> 將指定file或者指定目錄添加到版本庫中(若是文件較多,可使用 git add . [.表明當前目錄])。unix
注意:這裏的(master)標識的是版本庫中的當前分支(branch),"master"分支是Git的默認分支,通常也成爲主分支。關於分支,後面會介紹。日誌
1-4,在add命令以後,Git還只是暫存(staged) 了這個文件,這只是提交以前的中間步驟。Git將 add 和 commit 這兩部分開了,以免頻繁的變化。
若是每一次添加,修改或移除文件的時候都要提交到版本庫中,仍是很蛋疼的。提交就像是一個"批處理",一次性更新全部的修改。
ok,如今執行 git status 命令,能夠查看當前狀態。
Git的一些反饋信息仍是很人性化的,這裏能夠看到Git提示咱們:有一個新的文件,名爲index.html已經暫存了。若是想取消暫存則使用命令 "git -rm --cached <file>"。
1-5,出了目錄和文件內容的實際變化以外,Git還會在每次提交的時候記錄其餘一些元數據,包括日誌消息和作出本次變動的做者。
一條徹底限定的 git commit 命令必須提供日誌消息和做者。git commit -m "日誌消息" [--author]。
至此,index.html 文件已經徹底提交到Git版本庫中了。
1-6,再次執行 git status 命令查看當前狀態。
Git系統咱們:在 master 分支上,工做區乾淨,沒有任何與版本庫中不一樣的文件或者未知的更新過的文件。
至此,一此完整的提交已經完成,主要涉及到的命令有 git init(初始化版本庫) , git add(添加工做區文件到Git暫存) ,git commit(提交到版本庫,必須附帶日誌信息和變動人信息) , git status(查看Git版本庫狀態)。
2,配置提交做者
通過上面的操做,你會發現,每一次commit都要附帶變動人信息,可是一個本地電腦來講,變動人信息基本上是固定的。
因此,咱們應該爲Git創建一些基本環境和配置選項。最爲基本的是,Git必須知道你的名字和emal地址。
若是輸入下命令能夠在Git的配置文件中保存咱們的身份信息:
git config --global user.name "xxxxxx"
git config --global user.email "xxxxx@qq.com"
以上的命令,只須要執行一次便可。由於傳遞了 --global 選項。若是但願在一個特定的項目使用不一樣的名稱和email,就不要使用 --global 選項。
使用 git config --list 命令能夠查看全部的配置項目。
3,再次進行提交,並查看日誌
爲了展現一些更多的Git特性,咱們對版本庫中的文件作一些修改。
3-1,首先對 index.html 文件作一些修改。
3-2,查看一下當前Git版本庫的狀態,你會發現不一樣的提示信息。最後提交到版本庫。
這裏Git提示咱們,index.html 文件被修改,咱們能夠執行 git add 命令將其暫存,或者 git checkout <file> 進行牽出,牽出的文件將替換到工做區的文件,也就意味着當前的修改被牽出的文件所覆蓋。
命令 git checkout 會重寫工做區,因此使用的時候必定要謹慎。
3-3,查看提交
一旦版本庫中有了提交,就能夠經過多種方式查看它們。
有些Git命令顯示出單獨提交的序列,有的顯示出一次性提交的摘要,還有的則會顯示出版本庫裏每次提交的全部細節。
命令 git log 會輸出版本庫裏一系列單獨提交的歷史。條目數據按照時間排序。
上圖中框紅的標識爲提交ID,它是前面所說的"安全散列函數,SHA1"。它是惟一的。
還能夠根據提交ID,查看一下這個提交的具體信息。
還能夠查看提交差別。
看到這一長串的SHA1碼懼怕了嗎?不用擔憂這些使人生畏的十六進制數字。Git提供了許多更短,更簡單的方式來執行上如的命令,而無序輸入一個完整的SHA1嗎。