git學習筆記(1)-git基礎
作為一個裝逼、逗比的程式猿,對於版本管理還停留在svn、cvs,每當看到論壇、帖子中出現git、github字眼都會莫名的jujin,為啥重來沒有試過。
好吧,今天就來看看git它到底有多神奇!在下英語實在是惱火,於是只有看下中文版本的pro git,先分享給大家吧。
下面就是重點了
我的電腦:win7 i3 (就是這麼任性的差)
下載後安裝exe,成功後桌面出現快捷方式。
此後配置git,我是沒有配,所以省略一萬字。
接下來開始,上菜
基本操作
git init : 初始化工作空間,產生.git目錄,用於存放資料及資源。
git add filename : 將file新增到被跟蹤檔案中(即版本控制中);修改後的檔案釋出新的版本也需要執行此命令新增到暫存區。
git clone projectUrl name :將存在的專案從其他地方複製過來,並取好別名name。
git status :檢視專案中的檔案狀態,只會顯示已在版本控制中的檔案狀態(modified,added,deleted)。
git diff :能檢視本地與暫存區及版本控制中的檔案的不同之處,並用檔案補丁的方式顯示具體增加或刪除的行。
--cached/staged 看已經暫存起來的變化
git commit : 將儲存在暫存區中的檔案(可能是最近幾次add但沒提交的)全部提交到一個新的版本。
-m msg msg為提交版本的註釋
-a 將所有在版本控制中的檔案全部提交,而不管是否是手動add過的
--amend 將新的檔案與上一次提交的檔案合併成一次提交
git reset HEAD file 取消放在在暫存區中要提交的檔案
git cheakout -- file 不修改本次檔案,從版本庫中取得最新的檔案
git rm :刪除版本控制的檔案,若在提交前有修改,則需要加-f強制刪除。
--cached 僅從暫存區刪除,當前目錄中還是存在該檔案
git mv file1 file2:移動檔案,重新命名。
若要將專案中某些檔案忽略版本控制,新建.gitignore檔案中使用正則表示式去限制(如臨時檔案,日誌檔案,以及自動生成的文件(有點不理解什麼意思))
附
日誌
git log :檢視日誌。
-p:提交日誌的內容差異
-n:檢視最近n次 的提交
-stat:顯示每次修改的行數
--pretty:(重要)
=oneline/short/full/fuller
=format,git log --pretty=format:"%h - %an,%ar:%s"
--since/after/befor
--auchor 指定作者
--grep 註釋中出現的詞
遠端倉庫
git remote :顯示遠端倉庫。
-v (verbose) 顯示對應的克隆地址
git remote add url alias :增加新的遠端倉庫。
git fetch alias: 從倉庫中獲取最新版本的資料
git push [alias] [branchNM] :推送新的資料到遠端倉庫
git remote show :檢視遠端倉庫的資訊
git remote rename :修改倉庫別名(一般不會更改,多了你自己都搞不清楚了)。
git remote rm :刪除遠端倉庫。
標籤
git tag :將完整的一個版本加上標籤有助於區分。
-l 列表顯示所有標籤,可跟正則表示式篩選
-a 新增一個標籤
-m 標籤說明,一般與新增標籤一起使用
git show :顯示相應標籤的版本資訊,並連同顯示打標籤時的提交物件。
像還有其他的自動補全,命令別名,持續更新吧。