關於checkout命令前面陸陸續續寫了不少,比如用來丟棄工作區的修改、切換分支、建立並切換分支等。下面繼續將checkout的其他用法。
先看當前git的狀態:
總共有三次提交,每次提交對應新增一行。
下面使用如下命令:
checkout後面跟上提交的commit id,輸入命令中為第二次提交的commit id。
輸入命令後git提示當前位於游離的head狀態,在這個狀態下可以做一些實驗性的更改並提交他們,並且可以通過另乙個checkout命令來丟棄在該狀態寫做的修改和提交。如果想要保留這些提交,使用git checkout -b命令。
來看看當前git狀態:
修改檔案並提交:
在游離狀態下做了新的提交,下面通過checkout切換分支命令來丟棄提交:
當切換回master分支時,git提示落下了乙個提交,這個提交沒有連線到任何分支,如果想要通過建立乙個分支來儲存提交,現在是乙個恰當的時間。
如果不儲存,不建立分支即可。
Git超詳解八 git工作流
因為git功能實在太強大了,太靈活了。這導致如果每個人都有自己的習慣,而不統一遵循乙個規範,那麼一起協作開發將變成災難性的。所以有git工作流來規範大家的行為,工作流大部分情況都是規範分支的使用。不同的git平台,都有可能自己不同的git工作流,以下進行講解。git基本工作流是規定長期存在兩個分支m...
git 八 多人協作
當你從遠端庫轉殖時候,實際上git自動把本地的master分支和遠端的master分支對應起來了,並且遠端庫的預設名稱是origin。要檢視遠端庫的資訊 使用 git remote 要檢視遠端庫的詳細資訊 使用 git remote v 如下演示 一 推送分支 推送分支就是把該分支上所有本地提交到遠...
八 git物件模型
物件 objects 型別 4種資料物件 blob,tree,commit,tag 大小 物件資料內容的大小 檔名 如果sha1演算法生成 sha1物件資料 用40個字元的字串用來表示物件名 目錄 名 字串由物件內容做sha 1雜湊計算得來 通過比較sha 1值來比較兩個檔案的內容 快!不同型別的物...