如何为Mercurial差异数据添加文件名,解决补丁导入失败问题
给无文件名的diff添加文件标识的方法
Mercurial(TortoiseHg基于它)的补丁必须包含文件路径信息才能识别差异,你只需要在现有diff内容最前面加上标准的文件头即可:
- 确认文件在仓库中的相对路径(比如
MainForm.cs或者UI/Forms/MainForm.cs) - 在diff内容开头添加以下格式的文件头:
--- old/[你的文件名] +++ new/[你的文件名]
把[你的文件名]替换成实际的文件名(含路径)
- 将修改后的完整diff内容复制到剪贴板,重新执行「仓库→导入补丁→从剪贴板导入」操作即可正常导入。
举个实际修改后的例子(假设文件名为MainForm.cs):
--- old/MainForm.cs +++ new/MainForm.cs @@ -953,7 +953,7 @@ if (acqCount > 0) { this.userCtrlRobotMgr3D.Enabled = false; - this.userCtrlRobotMgrOCT.Enabled = false; + //this.userCtrlRobotMgrOCT.Enabled = false; this.userCtrlAcq3D.Enabled = false; this.userCtrlAcqOCT.Enabled = false; } @@ -971,7 +971,7 @@ { this.userCtrlMachine.Enabled = true; this.userCtrlRobotMgr3D.Enabled = true; - this.userCtrlRobotMgrOCT.Enabled = true; + //this.userCtrlRobotMgrOCT.Enabled = true; this.userCtrlAcq3D.Enabled = true; this.userCtrlAcqOCT.Enabled = true; this.userCtrlOven.Enabled = true;
注意:文件名必须用仓库内的相对路径,否则导入时会找不到对应文件。
内容的提问来源于stack exchange,提问作者Pedro Ferreira
相关产品推荐
相关产品推荐

