使用Git Diff文件升级代码

这两天在升级HoudiniEngine插件的代码, 在解决完编译问题以后开始手动Merge之前的改动, 本文主要记录一下使用Diff文件升级代码的流程.

由于需要和同事一起升级HoudiniEngine插件, 所以专门为新的HoudiniEngine插件建立了一个GitLab仓库. 在这种情况下, 我选择使用Diff文件来作为跨仓库升级代码的媒介.

1. 创建Diff文件

可以使用SourceTree跳转到指定提交以后, 在右键菜单中选择”创建补丁” 即可创建相应的Diff文件.

2. 修改Diff文件

由于两个仓库中对应的源代码文件路径一般是不一致的, 所以在创建完Diff文件以后, 还需要打开Diff文件进行编辑, 将其中的源代码文件路径修改为新仓库中的文件路径. 一般来说, Diff文件中”a/” 与”b/” 以后的源代码文件路径均需要修改.

3. 应用Diff文件

使用如下命令应用Diff文件.

git apply --reject XXX.diff

其中, 参数”–reject” 表示当应用Diff文件失败时, 需要在相应的源代码文件的同级目录下生成reject文件. 根据reject文件, 我们可以清楚地知道有哪些代码块的改动无法被直接应用. 此时, 我们需要打开相应的源代码文件手动解决问题.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注