我在我的项目上做了很多工作,我意识到应该在另一个分支上完成。如果我现在创建一个分支,我的当前更改是否需要签入,或者在创建新分支时是否会被擦除?我对GIT很新,我只是想避免犯新手的错误。
答案 0 :(得分:7)
如果使用以下方法从当前HEAD创建新分支:
$ git checkout -b newbranchname
然后不会覆盖更改。
答案 1 :(得分:2)
在您的情况下,bdonlan的答案适用,因为创建新分支不会触及工作目录。
在更常见的情况下,Git会警告您并在您尝试切换仍然存在工作目录更改的分支时中止。无论哪种方式,都不会失去变化。
在这些情况下,要将未提交的工作目录更改移动到新分支,请先将其保存到Git存储:
git stash save
然后创建并签出该分支:
git checkout -b new-branch-name
然后从Git stash中弹出工作目录更改:
git stash pop
答案 2 :(得分:1)
他们将被转移到新的分支。但如果您觉得不安全,可以先备份本地项目目录。