2013-03-04 68 views
13

我想将一个git存储中的某些更改应用于一个提交,并将其余更改应用到另一个提交。我怎样才能只应用一些git存储?

+1

“半”是什么意思?什么的一半?每个隐藏一半,或隐藏列表的一半? – 2013-03-04 23:09:50

+1

可能是*半*你的意思是*一部分*? – bitmask 2013-03-04 23:10:32

回答

9

Unstash藏匿...

git stash pop 

...使用补丁模式git add ...

git add -p 

...然后提交这个......

git commit -m "Partial stashed commit" 
+2

您也可以重新保留未分配的更改,但保留索引。 – R0MANARMY 2013-03-04 23:18:13

+1

打开终端并键入git checkout stash @ {0} - alvarodoune 2016-09-21 14:20:27

13
git checkout [email protected]{0} -- <filename> 

为每个提交和所有文件n执行两次这将涉及每个。你可能能够做到这一点的列表或一个文件名的glob。

3

仅对您想要更改的文件应用此修补程序。

git show [email protected]{0} -- <file(s) in question> | git apply