本篇文章中為大家帶來了關於Git版本管理的相關知識,版本管理工具能夠紀錄每次的修改,只要提交到版本倉庫,就可以找到之前任何時刻的狀態,希望對大家有幫助。
Git是一個「分散式版本管理工具」。
版本管理工具能夠記錄每次的修改,只要提交到版本倉庫,就可以找到之前任何時刻的狀態。
我們在寫東西的時候都用過撤消這個功能,但是撤消只能回撤有限步,通常關閉編輯軟體後再重新打開,此時的撤銷紀錄都已被清空了。而「版本管理工具」則不同,它能記錄每次的修改,只要提交到版本倉庫,就可以找到之前任何時刻的狀態。
安裝git軟體後,在任意目錄下建立一個新資料夾,打開,然後執行git init來建立新的git倉庫(該指令將會建立一個名為.git的隱藏子目錄)。
執行指令git clone 遠端專案位址,用來複製遠端伺服器上的倉庫。
Git有三種狀態,分別是已提交(committed)、已修改(modified)、已暫存(staged)。
Git的三種狀態分別對應本地倉庫的三個工作流程,本低倉庫是由git維護的三棵樹組成。
前面提到了master分支,那麼如何直覺的了解分支呢?
分支是用來將特性開發絕緣開來的。在創建倉庫的時候,master是「預設」分支。在其他分支上進行開發,完成後再將它們合併到主分支上。
git branch test1 | 建立一個名字為test1的分支。 |
---|---|
git checkout test1 | #切換目前分支到test1 |
git checkout -b test1 | 建立一個叫做「test1」的分支,並切換過去。 |
git checkout master | #切換回主分支。 |
git branch -d test1 | 把新建的分支刪掉。 |
git push origin | 將分支推送到遠端倉庫。 |
git merge test | #合併分支。 |
使用指令git pull 「遠端分支名」 從遠端取得程式碼並合併到本低的版本(在工作目錄中取得(fetch)並合併( merge)遠端的改動)
使用指令git merge “分支名” 把合併其他分支到目前分支。
前面的兩種情況,git都會嘗試去自動合併改動。但合併可能會出現衝突(conflicts),需要手動修改檔案來合併這些衝突。改動後執行git add 將它們標記為合併成功。在合併變更之前,可以使用git diff
如果操作錯誤,可以使用指令git checkout – 取代掉本機變更。此指令會使用HEAD中的最新內容來取代掉工作目錄中的檔案(已新增至暫存區的變更以及新檔案都不會受到影響)
將test重新命名為test1:git remote rename test test1
移除遠端倉庫test1:git remote rm test1
取消暫存的檔案:git reset filename
撤銷對檔案的修改:git checkout –filename
使用指令git log --author=bob來只看某個人的提交記錄。加入一些參數來修改輸出,從而得到自己想要的結果。
查看哪些檔案改變了: git log --name-status
Git教學》
以上是一文帶你讀懂什麼是Git版本管理的詳細內容。更多資訊請關注PHP中文網其他相關文章!