假設你當前在你本地的xx分支,執行
git branch xxxy,即在本地建立了一個xxxy分支。注意,這個僅僅是在你本地的分支,如果你不提交該分支到遠端,只有你自己看到。這時,新建分支的內容同你當前所在的xx分支,
是以你當前所在分支為模板的。
然后,執行git branch可以看到你所有的本地分支。
然后,git checkout
xxxy, 切換到當前分支。
(其實,分支的創建和切換只需要下面的一個指令就可以完成了:git checkout -b
分支名
)
( Git checkout 分支名 執行后,你本地的數據,目錄結構,都會自動更新成該分支的內容!!!太好用了!但是,如果添加了一個文件,沒有add的話,git會不動他)
然后,你可以修改代碼,增加文件等,然后,git add, git commit 將改動存到本地Repository.
注意:
假設現在有一個本地分支xxx1,其對應遠端倉庫的yyy1分支,當前你在本地處於xxx1分支,並執行git branch xxx2,在本地以xxx1為基礎新建立一個分xxx2支,然后切換到xxx2分支,以企圖自由修改代碼,修改之后,必須要add並commit,否則,你切回本地xxx1時:git check out xxx1, 會報錯:
一個應用場景:
當前在本地的x分支,對應遠程的xx分支,無意間修改了一些代碼,然后想要將修改的這部分代碼保存到本地的一個新的分支xNew中(不想保存到遠端),需要的操作: 在x分支下,執行git add ,git commit,然后,git branch xNew,git checkout xNew. 以后你就可以到xNew分支看代碼了。 另外,在本地的x分支添加的代碼不想保留,則切到x分支,然后執行git reset –hard HARD~1 (回到最新一次commit之前,並同時更新本地文件內容,ref: https://www.cnblogs.com/lfxiao/p/9378763.html )
記住一個原則:
在本地當前分支修改文件后,如果想要保存到話請務必add,commit,若不想保存則reset掉!然后,再切換到其他分支! (執行add commit指令是在告訴git系統吧文件有改動吧!如果不執行,git不知道吧)
Ref: