我在GIT上阅读this (old) posting并阅读以下内容:
通过使用
git add --p
,您可以从要包含的文件中选择要签入的修补程序。结果是索引包含的文件版本不在您的工作副本中。
我的问题有两个:
答案 0 :(得分:2)
我认为你可能会误解git add -p
的作用。
git add -p
是您可以使用的,如果您在工作副本中修改了文件,但您只想将这些文件中的一些差异应用于索引。因此,您最终会得到索引中的某些内容,其中只包含您工作副本中的某些更改。它与补丁文件没有任何关系;它只是让您选择工作副本和HEAD之间的差异部分来应用于索引。
如果要将补丁文件应用于索引和/或工作副本,请使用git apply
。默认情况下,这只会对工作副本应用更改,您必须使用git add
将它们添加到索引中;但是,您可以使用--index
将它们添加到索引中,或--cached
仅 将它们添加到索引中,而无需修改工作副本。
如果要在邮箱中应用大量补丁,可以使用git am
一次应用一系列补丁。