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