如果我将代码存储在一个分支中并更改为另一个分支会发生什么?

时间:2013-04-09 18:22:37

标签: git version-control git-branch

我有一些代码,我想提交到另一个分支,但是我在创建分支之前做了更改,所以现在我是主人,我想要存储代码,创建一个本地分支,签出它,以及然后将代码存入新分支,以便我可以在其中提交。

这会有用吗?

$>git stash
$>git checkout -b newversion
$>git stash pop
$>git commit -m 'new version'

你应该想'嘿老兄只是这样做并检查是否有效',好吧,有很多文件所以我不想搞砸了,任何有关这方面的帮助都会非常有帮助。

感谢。

3 个答案:

答案 0 :(得分:2)

是的,当然可行。这正是git stash的用途。您实际上甚至没有更改工作目录,只是为当前检出的提交分配了一个额外的名称(“newversion”)。实际上没有可能失败或导致冲突的方式。

另外,你真的应该“只是做它并检查是否有效”。无论有多少文件,一旦你把它们藏起来就有了它们。如果出现问题,你可以重新开始。

答案 1 :(得分:1)

在这里,您可以通过视觉方式查看它: http://ndpsoftware.com/git-cheatsheet.html#loc=stash;

答案 2 :(得分:1)

您的解决方案将按预期工作,但您可以在不使用git stash的情况下完成相同的结果。如果你刚刚做了一些必须在新分支上提交的修改,那么只运行4个命令中的2个就足够了:

git checkout -b newversion
git commit -a -m "new version"