$ git branch testing #建立新分支testing
$ git checkout –b testing #建立並切換到testing分支
$ git checkout –b testing master # 基於master分支建立並切換到testing分支
$ git checkout testing #切換到testing分支,head執向testing分支
$ git checkout testing #切換到testing分支
$ git commit –am 「update ui」 #提交後, head 隨著分支一起向前移動
提交後 head 隨著分支一起向前移動
1.將乙個分支的修改合併到另乙個分支上。
2.三方合併,會形成merge節點。
3.快速前進,不會形成merge節點,分支圖呈線性。
當前 master 分支所在的 commit 是要併入的 hotfix 分支的直接上游,git 只需把指標直接右移。換句話說,如果順著乙個分支走下去可以到達另乙個分支,那麼 git 在合併兩者時,只會簡單地把指標前移,因為沒有什麼分歧需要解決,所以這個過程叫做快進(fast forward)。
--commit 合併後自動提交
--no-commit 合併後僅僅改變當前分支中的工作區的檔案內容
-m 自動提交時所使用的注釋
git merge 衝突解決
1、衝突產生的原因
修改了兩個待合併分支裡同乙個檔案的同一部分。
2、檢視衝突檔案:
任何包含未解決衝突的檔案都會以未合併(unmerged)狀態列出。
git status
unmerged:
3、解決衝突:
vi 衝突檔案,合併部分用<<>> 分隔符標記,手動解決衝突後,刪掉這些標記。
在解決完所有檔案的衝突後,執行git add ,使檔案標記為衝突已解決;執行git status檢視檔案狀態為modified,再執行git commit 提交,完成這次合併提交。
git branch
git branch –a
git branch -r
git branch -v
git branch –d branchname
刪除分支僅僅是刪除該分支的名稱而已,不會刪除該分支所包含的任何提交記錄,在git系統中,只要提交過的內容就不會丟失
git branch –merged
git branch –no-merged
遠端分支(remote branch)
是對遠端倉庫狀態的索引。它們是一些無法移動的本地分支;只有在進行 git 的網路活動時才會更新
git學習三(本地分支)
1 git commit 提交三個檔案物件以後的git倉庫物件 git 倉庫中有五個物件 三個表示檔案快照內容的 blob 物件 乙個記錄著目錄樹內容及其中各個檔案對應 blob 物件索引的 tree 物件 以及乙個包含指向 tree 物件 根目錄 的索引和其他提交資訊元資料的 commit 物件。...
GitHub教程學習筆記1 本地Git管理
寫在前面 為啥寫學習筆記?因為有一句我覺得挺有道理 你教別人學習,自己的理解也會加深 想想是不是?初高中那些學霸們各個都是小老師 貌似曾今我也是呢哈哈 當然,廖老師的教程是極好的,我把學習的指令做了下面的總結,如果已經看過老師課程,有些指令不太記得的話,可以看看這個 cd e cuiyue t gi...
git 二 本地git操作提交 版本回退
什麼是版本庫?版本庫又名倉庫,英文名repository,你可以簡單的理解乙個目錄,這個目錄裡面的所有檔案都可以被git管理起來,每個檔案的修改,刪除,git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻還可以將檔案 還原 所以建立乙個版本庫也非常簡單,如下是e盤 code目錄下新建乙個t...