习惯用sourceinsight(以下简称si)软件的人,我想都碰到过像我一样的经历:拷贝工程后,用si打开,修改代码,发现修改的代码竟然是被复制的工程。多次犯错,致使我决心研究了一下午的sourceinsight设置相对路径问题,baidu搜索到很多错误方法:基本都是说修改project settings -> project source directory,用什么"..\si"替换之类的,纯属胡说八道,不明白为何这种错误方法为何会散布那么广,百度搜出来的基本都是这样的。害的我都怀疑自己软件版本。于是从新下了最新版的sourceinsight3.5.0086,结果也是一样的。因此我决定写一下这个方法,拨乱反正。以下内容都是在sourceinsight3.5.0086版本上验证的。
1. 经过多次摸索,我发现根本在project settings -> project source directory的路径根本就无法修改成“../si”,
2. 新建工程时,先要选择一个project data directory, 这个地方是选择"*.PR"文件的地方。这个可以随便选。但是下一步,选择 project source directory时,必须选择工程的根目录,在根目录下加入的文件,才是相对地址,添加文件后,可以在文件列表中看到的路径是相对路径(如下图),这种情况下拷贝工程,才不会出现修改的是被拷贝的工程。
3. 拷贝到新路径之后,打开si的工程,首先必须把所有已经打开的文件清空一下。点击file->close all。不然那些已经打开的文件还是被拷贝的工程的文件。但是文件窗的文件确是新工程的文件。
4. 很多人会习惯在工程根目录下,新建一个si的文件夹专门存放si的工程文件,如果在project settings -> project source directory中也是填的si的文件夹,那加入文件后,就可以看到文件后面全部带有绝对路径。这种情况下拷贝工程,文件因为是绝对路径(如下图),所以文件列表里面的文件还是被拷贝的工程的文件。结论:只要存在添加的文件是在project settings -> project source directory目录下找不到的文件,该文件就是绝对路径。拷贝后就要重新添加文件。