git am和git apply 有什么区别

2023-02-14 10:07:28    技术分享   

git am 和 git apply 是 Git 中两个用于应用补丁文件的命令,但是它们有一些重要的区别:

1 git am 可以自动地创建一个新的提交,并且保留补丁文件中的作者和提交信息。相反,git apply 仅仅是将补丁应用到当前的工作树,并不创建新的提交。

2 git am 通常用于从一个邮件形式的补丁文件(例如,从一个电子邮件或者一个邮件列表)中应用更改,因此它可以处理一些比较复杂的补丁,例如多个提交和元数据。相反,git apply 通常用于从单个补丁文件中应用更改,因此它可能不能处理邮件形式的补丁文件。

3 git am 可以设置一些选项,例如 --signoff 和 --committer-date-is-author-date,以便控制创建的提交的行为。相反,git apply 没有这样的选项。

因此,如果您希望保留补丁文件中的作者和提交信息,并且希望创建一个新的提交,则应使用 git am。如果您只是想快速地将补丁应用到工作树,则应使用 git apply。


QQ
微信