git本地創建多個分支,互不干擾。
情景:在做某個需求a時,先需要修改緊急bug b;發版時發的是遠程dev的代碼。
方式一(
推薦):
(1)本地已有分支dev,寫了需求a,先commit,即將工作區的內容提交到版本庫中,否則切換到其他分支時,就會覆蓋當前工作區的代碼。(這步很重要)
(2)在本地創建dev_bug分支,從遠程dev分支中check(git checkout -b dev_bug origin/dev)
(3)在本地dev_bug上修改bug,並commit、push到遠程dev上
(4)在本地變換到dev,繼續做需求a
方式二:
(1)本地已有分支dev,寫了需求a,先commit,即將工作區的內容提交到版本庫中,否則切換到其他分支時,就會覆蓋當前工作區的代碼。(這步很重要)
(2)執行git log --pretty=oneline,會顯示所有的版本號,記住最新的那個版本號,記為A
(2)然后執行git reset --hard HEAD^,恢復到上個版本。
(3)本地新建分支dev_debug(git checkout -b dev_debug),這時dev_debug的代碼是寫需求a之前的版本。修復完bug后,提交並push到遠程dev。
(4)本地切換到dev分支,並回到最新的那個版本A ,執行命令git reset --hard <A前幾位>,這時又回到需求a的開發。
方式三(
推薦)
(1)本地已有分支dev,寫了需求a,但是不要提交。
(2)執行git stash命令,將工作區的內容“儲存起來”
(3)接着在dev分支上修改bug,並提交,push
(4)執行git stash pop,恢復工作區原來的內容。
