使用补丁
与其提交本地更改,您可以将其放入一个 .patch 文件,稍后将其应用到源代码、通过电子邮件发送等。 使用补丁是一种在不将更改提交到 Git 存储库的情况下共享更改的便捷机制。
从未提交的更改创建补丁
在 提交 工具窗口(Alt+0 )中,选择要包含在补丁中的文件或更改列表,并从上下文菜单中选择 从本地更改创建补丁。
在打开的对话框中,确保已选择要包含到补丁中的所有更改,输入提交消息(它将用作补丁文件名),然后点击 创建补丁。
在 补丁文件设置 对话框中,指定以下详细信息:
补丁文件位置:选择默认位置,或者如果不想将补丁保存为文件,请选择 到剪贴板 选项。
基路径:指定补丁文件中各路径所相对于的路径。 通常,这是您的项目目录,但在某些情况下您可能希望使用相对路径,例如修改后的文件存储在 Git 存储库内部时。
反向补丁:如果您希望创建一个撤销已做更改的补丁,请选择此选项。
编码:从下拉列表中选择补丁文件的编码。
如果您不需要将补丁保存到文件(例如,您想改为通过电子邮件发送),请在 提交 工具窗口(Alt+0 )中右键点击所需文件,并从上下文菜单中选择 复制为补丁到剪贴板。
从整个提交创建补丁
在 Git 工具窗口 Alt+9 的 日志 选项卡中,找到包含您希望纳入补丁的更改的提交,并从上下文菜单中选择 创建补丁。
在 补丁文件设置 对话框中,指定以下详细信息:
补丁文件位置:选择默认位置,或者如果不想将补丁保存为文件,请选择 到剪贴板 选项。
基路径:指定补丁文件中各路径所相对于的路径。 通常,这是您的项目目录,但在某些情况下您可能希望使用相对路径,例如修改后的文件存储在 Git 存储库内部时。
反向补丁:如果您希望创建一个撤销已做更改的补丁,请选择此选项。
编码:从下拉列表中选择补丁文件的编码。
从文件创建补丁
在任意视图中选择所需文件(项目 工具窗口(Alt+1 )、编辑器、 提交 窗口等)。
从主菜单中选择 Git | 所选文件 | 显示历史记录 ,或在所选内容的上下文菜单中选择 Git | 显示历史记录。 将向 Git 工具窗口添加 历史 选项卡,显示所选文件的历史记录,并允许您查看和比较其修订。
右键点击某个修订,并在上下文菜单中选择 创建补丁。
应用补丁
在主菜单中,选择:
以选择已保存的
.patch文件。,如果已复制补丁文件的内容。
例如,当您通过电子邮件收到补丁且不想保存时,这种方式很方便。 对于 Git 格式 补丁,PyCharm 会提取提交消息和作者,并自动填写 提交 工具窗口(Alt+0 )中的相应字段。
在打开的 应用补丁 对话框中,指定要应用的 .patch 文件的路径。
如果在创建补丁之后源代码被编辑,可能会产生冲突。 要检查补丁能否在无冲突的情况下应用,请点击 显示差异
Ctrl+D。 如果存在冲突,相应的行将以红色高亮显示。
如有必要,点击
更改目录路径 并选择:
映射基目录 :指定一个目录,补丁文件中的文件名将相对于该目录进行解释。 您可以将基础目录映射到单个文件、目录或所选内容。
移除前导目录 :将更改应用于补丁中指定目录之外的文件。 点击此按钮可移除目标文件路径中的一个斜杠。 点击按钮并根据需要删除的顶级目录次数执行操作。 删除斜杠的数量以方括号表示。
移除所有前导目录 :一键删除所有前导目录并将补丁应用到基目录中指定名称的文件。
恢复前导目录 :撤销上一个 移除前导目录 操作。 点击按钮恢复之前剥离的任意数量的前导目录。
恢复所有前导目录 :撤销 移除所有前导目录 操作。
选择要将补丁应用到的更改列表,或在 名称 字段中指定新更改列表的名称,并为该更改列表输入注释(可选)。
如果您希望使此更改列表处于活动状态,请选择 设为活动 选项。
如果您希望 PyCharm 在新更改列表停用时保存与其关联的任务的 上下文 ,并在该更改列表变为活动状态时恢复该上下文,请选择 跟踪上下文 选项(详细信息请参阅 任务和上下文)。
如果要从剪贴板应用补丁,可以选择 分析并即时应用剪贴板中的补丁 选项,让 PyCharm 自动检测剪贴板内容中的补丁并建议应用这些补丁。
如果您希望在应用前将补丁移至临时存储(搁置),请点击 导入到搁置 (有关更多信息,请参阅 搁置或储藏更改)。 否则,点击 确定。