我有一个包含大量更改的修补程序,我希望将其拆分为多个提交,并可能修改某些更改。
我想将此补丁应用于我的工作目录,然后手动提交更改。是否可以将补丁应用于git中的工作目录?
答案 0 :(得分:23)
您可以使用应用补丁的git apply
:
git apply < patchname.patch
这不会创建任何提交。实际上,没有任何选项,git apply
命令甚至不需要具有Git存储库。它只是将补丁应用于文件。
答案 1 :(得分:4)
您可以使用patch
命令,例如:
patch -p1 < path/file.patch
使用patch
命令时,通常会自动检测格式。当您尝试将补丁应用于工作目录时,这非常有用,该工作目录不是您要修补的项目的本地签出。
如果您的补丁是专门为项目创建的,则使用git apply
,否则在git存储库的本地签出中使用时将无法执行任何操作。
答案 2 :(得分:1)
试试这个命令行
git am < patchname.patch