使用补丁
与其提交本地更改,您可以将它们放在 .patch 文件中,稍后应用到您的源代码中,通过电子邮件发送等等。 使用补丁是一种方便的机制,旨在无需将更改签入 Git 仓库即可共享更改。
从未提交的更改中创建补丁
在 提交 工具窗口 Alt+0 中,选择您要包含到补丁中的文件或更改列表,然后在上下文菜单中选择 从本地更改创建补丁。
在打开的对话框中,确保已选择要包含到补丁中的所有更改,输入提交消息(它将用作补丁文件名),然后点击 创建补丁。
在 补丁文件设置 对话框中,指定以下详细信息:
补丁文件位置:选择默认位置,或者如果不想将补丁保存到文件,请选择 到剪贴板 选项。
基路径:指定补丁文件中各路径所相对于的路径。 通常,这是您的项目目录,但在某些情况下您可能希望使用相对路径,例如,已修改的文件存储在您的 Git 仓库中时。
反向补丁:如果您想创建一个还原您所做更改的补丁,请选择此选项。
编码:从下拉列表中为补丁文件选择编码。
如果您不需要将补丁保存到文件(例如,您希望改为通过电子邮件发送),请在 提交 工具窗口 Alt+0 中右键点击所需文件,并在上下文菜单中选择 以补丁形式复制到剪贴板。
从整个提交中创建补丁
在 日志 选项卡的 Git 工具窗口 Alt+9 中,找到包含您想要包含在补丁中的更改的提交,并从上下文菜单中选择 创建补丁。
在 补丁文件设置 对话框中,指定以下详细信息:
补丁文件位置:选择默认位置,或者如果不想将补丁保存到文件,请选择 到剪贴板 选项。
基路径:指定补丁文件中各路径所相对于的路径。 通常,这是您的项目目录,但在某些情况下您可能希望使用相对路径,例如,已修改的文件存储在您的 Git 仓库中时。
反向补丁:如果您想创建一个还原您所做更改的补丁,请选择此选项。
编码:从下拉列表中为补丁文件选择编码。
从文件创建补丁
在任何视图中选择所需的文件(如 项目 工具窗口 Alt+1 、编辑器、 提交 窗口等)。
从主菜单中选择 Git | 选定文件 | 显示历史 ,或从所选内容的上下文菜单中选择 Git | 显示历史。 历史记录 选项卡将添加到 Git 工具窗口中,显示所选文件的历史记录,并允许您查看和比较其修订版本。
右键点击某个修订,并在上下文菜单中选择 创建补丁。
应用补丁
请选择 Git | 补丁 | 应用补丁 从主菜单。
在打开的 应用补丁 对话框中,指定您要应用的 .patch 文件的路径。
如有必要,请点击
并选择 基础目录映射 来指定一个目录,相对于此目录,将解释补丁文件中的文件名。 您可以将基础目录映射到单个文件、目录或选择项。
如果源代码在创建补丁后被编辑,可能会出现冲突。 要检查您的补丁是否可以无冲突地应用,请点击 显示差异
Ctrl+D。 如果存在冲突,相应的行将以红色高亮显示。
如果您希望对存储在补丁中指定位置以外的文件进行更改,您可以通过点击
并选择 删除所有前导目录 来去除前导目录。
请选择您想要应用补丁的更改列表,或者在 名称 栏中指定一个新更改列表的名称,并输入对此更改列表的注释(可选)。
如果您想使此变更列表生效,请选择 设为活动 选项。
如果您希望在应用补丁前将其移动到临时存储(搁置),请点击 导入到书架 (有关更多信息,请参阅 搁置或储存更改)。 否则,点击 确定。
您还可以复制补丁文件的内容并通过从主菜单中选择 Git | 从剪贴板应用补丁 来应用它。 例如,当您通过电子邮件收到补丁且不想保存它时,这非常方便。 对于 Git 格式补丁,GoLand 会提取提交消息和作者,并自动填充 提交 工具窗口 Alt+0 中的相应字段。