使git分支再次等于master

时间:2012-11-21 09:07:06

标签: git branch

短版

将分支等同于master的最简单方法是什么,丢弃任何差异? 到目前为止,我只使用git branch -D wip,然后使用git checkout -b wip,但这看起来有点傻。

动机

我经常在我的wip分支旁边有一个master分支,用于“正在进行的工作”。有时,这样一个分支上的工作会“落后”,当我重新发现它时,我发现我不再需要它了。当我想使用分支存储一组新的“正在进行的工作”时,这种重新发现经常发生,我发现我只是想放弃与master的任何差异,因此新的“正在进行的工作”适合于最重要的。弄清楚差异是不值得的:上面描述的解决方案对我来说很好。有没有更好的解决方案来解决这个用例?

2 个答案:

答案 0 :(得分:12)

在你的分支中尝试这个:

git reset --hard master

这将使您的分支与master相同,删除您可能已完成的所有提交,并丢弃暂存区域中的所有文件。

答案 1 :(得分:7)

如果你真的想用这个名字吹走上一个分支,并创建一个新的分支你可以使用:

git checkout -B wip master

使用大写版本而不是-b将导致git切换到命名分支,并将其重置为命名为最后一个参数的新起点。如果您目前处于所需的起点,可以不使用最后一个参数(master此处),则默认使用HEAD