Git系列教程(一):簡介、安裝、配置我們學習了分布式和版本控制系統的概念、Git具有的8個功能以及如何在Windows上安裝Git、進行相關配置并創建版本庫。
Git版本庫中添加文件
Git 的工作就是創建和保存你的項目的快照及與之后的快照進行對比。我們編寫一個readme.txt文件并放置在learngit目錄下(子目錄也行),因為這是一個Git倉庫,放到其他地方Git再厲害也找不到這個文件。內容如下:
Welcome to baldprogrammer.Let us improve in git together.
步驟一:用命令git add告訴Git,把文件添加到倉庫:
$ git add readme.txt
步驟二:用命令git commit告訴Git,把文件提交到倉庫:
$ git commit -m "wrote a readme file"
使用 git add 命令將想要快照的內容寫入緩存區, 而執行 git commit 將緩存區內容添加到倉庫中。Git 為你的每一個提交都記錄你的名字與電子郵箱地址,所以第一步需要配置用戶名和郵箱地址。
-m后面輸入的是本次提交的說明,可以輸入任意內容,方便從歷史記錄里找到改動記錄。
git commit命令執行成功后會告訴你,1 file changed:1個文件被改動(我們新添加的readme.txt文件);2 insertions:插入了兩行內容(readme.txt有兩行內容)。
版本回退
現在我們修改文件,然后把修改提交到Git版本庫。修改readme.txt文件如下:
Welcome to bald programmer!Let us improve in git together with bald programmer.
然后進行git add commit命令進行提交
$ git add readme.txt$ git commit -m "append with bald programmer"
在Git中,版本控制系統通過git log命令方便我們查看歷史記錄:
git log命令顯示從最近到最遠的提交日志,我們可以看到2次提交,最近的一次是
“append with bald programmer”,最早的一次是“”wrote a readme file”。
接下來進行版本回退,把readme.txt回退到上一個版本:在Git中,用HEAD表示當前版本,上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100。
現在,我們要把當前版本"append with bald programmer"回退到上一個版本wrote a readme file,就可以使用git reset命令:
現在回退到上個版本,因需要想恢復到原本的新版本怎么辦?找不到新版本的commit id怎么辦?在Git中使用一個命令git reflog用來記錄你的每一次命令:
總結一下:HEAD指向的版本就是當前版本,因此,Git允許我們在版本的歷史之間穿梭,使用命令git reset --hard commit_id。
穿梭前,用git log可以查看提交歷史,以便確定要回退到哪個版本。
要重返未來,用git reflog查看命令歷史,以便確定要回到未來的哪個版本。