git 切換分支時會把未add或未commit的內容帶過去, 這一點值得注意。git
爲何呢?工具
由於未add的內容不屬於任何一個分支, 未commit的內容也不屬於任何一個分支。 也就是說,對於全部分支而言, 工做區和暫存區是公共的。spa
要想在分支間切換, 又不想又上述影響, 怎麼辦呢? git stash搞起。要注意,在當前分支git stash的內容, 在其餘分支也能夠git stash pop出來,爲何? 由於:工做區和暫存區是公共的。.net
建議本身操做並理解一下。blog
很少說。
---------------------
做者:stpeace
來源:CSDN
原文:https://blog.csdn.net/stpeace/article/details/84351160
版權聲明:本文爲博主原創文章,轉載請附上博文連接!開發
當執行命令 git checkout develop 切換到develop分支時,若是以前的分支對文件有修改,也會將修改的文件信息帶到develop分支上來。怎麼幹淨地切換到develop分支?有兩種方案,視狀況而定。get
方案一:git reset HEAD --hardit
方案二:git stash文件
方案三:git commitco
一、當前分支:alanchen
二、在alanchen分支上修改了幾個文件,如,A、B、C。
三、切換到develop分支時,A、B、C這三個文件的修改也會帶過來。用 git status 查看,能夠看到A、B、C這三個文件有修改。
想切換到develop分支時是乾淨的,若是這些修改再也不須要,能夠直接丟棄胡話,採用第種方案。
執行命令:
git checkout develop
git reset HEAD --hard
須要注意的是:
這樣alanchen分支上A、B、C的修改也沒有了
若是這些修改還須要,只是想臨時切換到develop分支,那麼採用第二種方案。
執行命令:
git stash
git checkout develop
若是是同時開了兩份分支在開發,在當前分支上的修改都須要保留,但願切換到另一個分支去開發,那麼採用第三種方案。
執行命令:
git add .
git commit -m "message"
git checkout develop
做者:陳琰AC 連接:https://www.jianshu.com/p/d2a9d8e59ba9 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。