在git如此風靡的環境下,如果對git沒點深入的研究,都不好意思說自己是搞前端的。下面讓我們一起走進git
一.每日工作備份
想象一下,如果某天你的硬盤突然壞了,那么硬盤上辛苦的工作成果是不是能幸存下來?如果不能該是多么的令人懊惱。如何防范災難而不讓一籃子的雞蛋一次毀於一旦,讓我們看看git是怎么做到的?,讓我們辛辛苦苦的工作成果有所保障。
如上圖所示,每完成一部分的工作,我都會通過git add . 和git commit提交一次,每天下班前,我會通過git push命令,將我本地git版本庫的工作推送到公司git服務器,相當於執行了步驟1。因為公司的git服務器和異地的git數據中心建立了鏡像,所以每次在我執行推送時,會自動觸發內網服務器到外網服務器的鏡像操作,相當於執行了步驟2.
二.異步協同工作
可能有好幾個人同時開發一個項目,或者是一個人在不同主機上對一個項目進行修改,這樣就會形成異步協同工作。好比我在家和公司對一個項目進行修改,下圖說明我是如何解決這個問題的
步驟3.4顯示了我在家是如何工作的,首先我通過步驟3將鏡像庫的項目拉到本地(在家肯定必須有局域網),然后經過修改后,通過步驟4將工作提交到home的版本庫。這里為什么要引用home的版本庫呢?直接用mirror版本庫不行嗎?確實不行,因為mirror是一個鏡像庫,不能進行寫操作。步驟3的命令也很簡單,用git pull mirror master就可以了。步驟4的命令是git push home。
三.修改提交說明
可能很多人,在提交之后,會發現自己的提交說明有錯別字,或者是不是很好理解。這時候就需要修改提交說明。在git中直接使用git commit --amend就可以進入修改提交說明的頁面,在這里你可以修改任意一次提交的說明。
四.想吃后悔葯
如果你提交了一個不應該提交很大的圖片a.img,這時候git很簡單的就能刪除這個文件的提交,使用git rm --cached a.img,git commit --amend就可以實現
五.工作進度保存
如果有個緊急需求,需要切換到一個干凈的工作區,或者是另外一個分支時,如何能確保當前未被提交的工作得以保存下來,git提供了很簡單的方法。
git stash保存當前分支的工作,git checkout new-branch切換到新的分支。當緊急需求完成后使用下面命令切換回原來的命令並恢復工作區
git checkout origin-branch
git stash pop