git存储变化适用于新的分支?

我正在做主分支,做了一些改动,然后把它们藏起来。 现在,我的主人在HEAD。

但现在,我想检索这些更改,但是从主分支的HEAD版本分支的新分支。

我该怎么做呢 ?

标准程序不起作用吗?

  • 做出改变
  • git stash save
  • git branch xxx HEAD
  • git checkout xxx
  • git stash pop

短:

  • 做出改变
  • git stash
  • git checkout -b xxx
  • git stash pop

既然你已经隐藏了你的改变,你所需要的就是这一行:

  • git stash branch <branchname> [<stash>]

从文档( https://www.kernel.org/pub/software/scm/git/docs/git-stash.html ):

从最初创build< stash >的提交开始创build并签出名为< branchname >的新分支,将logging在< stash >中的更改应用到新的工作树和索引。 如果成功,并且< stash >是stash @ {< revision >}forms的引用,则它将删除< stash >。 当没有< stash >时,应用最新的一个。

如果您运行git stash save的分支已经发生了足够的变化,那么git stash apply会因为冲突而失败。 由于在git存储运行时HEAD的提交之上应用了存储,因此它将恢复原始存储的状态而不产生冲突。