關於git是什麼我想我也不用多說什麼,其實關於git的操作在他們的官網上有詳細的說明,一項新的技術官網上的一定是最權威的,所以學習一門技術我個人更傾向於看官網,下面的是git的官網https://git-scm.com/
一、下載與安裝
選擇自己對應的作業系統,然後進行傻瓜式安裝即可。Windows
Linux中的安裝用命令yum install git進行安裝就行,後面的提示都選擇Y就可以安裝成功了,其實在官網上也有說明用Linux命令安排時的命令
點選上圖片Linux/Unix按鈕進入下面頁面,下面頁面詳細說明了安裝所用到的命令,有需要的朋友可以自行在官網檢視,因為官網對每一個命令的描述都很詳細了,這裡就不過多說明
二、git的版本控制
以我自己的專案資料夾為例,進行版本控制操作
點選右鍵選擇git bash here進入如下頁面
用如下命令建立資料夾
建立完成後進入新建立的資料夾中
用命令檢視會發現這個資料夾中現在是什麼檔案都沒有的
在目錄中執行 git init 命令初始化建立一個 Git 倉庫了。
為了搞清楚git是怎麼進行版本控制的,下面做一件事,就是建立一份檔案然後操作這個文字檔案。不斷的修改這個檔案的內容,每次修改之後,我需要記錄修改的歷史記錄。
用命令git add a.txt將需要提交的程式碼從工作區新增到暫存區
其實git add 的命令用法有好幾種,在這裡先暫時補充下,git add [引數] [--] <路徑>作用就是將我們需要提交的程式碼從工作區新增到暫存區,就是告訴git系統,我們要提交哪些檔案,之後就可以使用git commit命令進行提交了。
1 git add .
不加引數預設為將修改操作的檔案和未跟蹤新新增的檔案新增到git系統的暫存區,注意不包括刪除
2 git add -u .
-u == --update ,表示將已跟蹤檔案中的修改和刪除的檔案新增到暫存區,不包括新增加的檔案,注意這些被刪除的檔案被加入到暫存區再被提交併推送到伺服器的版本庫之後這個檔案就會從git系統中消失了。
3 git add -A .
-A == --all , 表示將所有的已跟蹤的檔案的修改與刪除和新增的未跟蹤的檔案都新增到暫存區。
操作完git add 後就是要提交到本地倉庫了,用命令git commit -m [message] ;其中[message] 可以是一些備註資訊。
然後 git status 命令檢視在上次提交之後是否有對檔案進行再次修改。
為顯示出git status這個命令的區別,我做一件事,把剛剛提交的檔案修改一下
然後再操作一次git status命令
會發現他提示你需求再次git add和git commit一下,那就再來次唄
這些操作完成後那麼本地庫裡就有了兩個版本的內容了,現在有了一個需求,那就是要把版本回退到最初始提交的版本,怎麼玩,先用git log命令檢視下提交記錄,會發現有兩次提交
方式有很多,因為我們就提交了兩個版本,所以回退到上個版本就可以用git reset --hard HEAD^就可以了
再次開啟檔案會發現檔案已回退到上一版本了
除了這個命令呢還有一個命令就是回退到指定版本,前面用git log命令時細心的人會發現有個版本id,就是commit
所以說想回退到指定版本就很簡單了,直接git reset --hard [commit] 就可以了;細心的朋友可能還能發現一個問題,那就是用git log命令能看到回退後的提交版本資訊,回退前的提交資訊看不了,如果現在又有個需求,那就是別人後悔回退了,要還原,怎麼搞,不急,我們能想到的問題,其實前輩們都遇到過,也做出瞭解決方案,還有一個命令叫做git reflog
看上圖,這個命令可以把所有提交記錄全展示出來,如果這時你想還原就更簡單了,就用上面用的那個git reset --hard [版本號]
這次再開啟檔案會發現發生了還原
是不是感覺這些命令也挺好玩的,後面我會說一些更好玩的東西,喜歡的朋友可以看下去