在Linux eclipse和MS Visual Studio之间共享源代码

时间:2013-01-11 23:13:24

标签: linux eclipse visual-studio svn windows-xp

我有一个linux eclipse项目已经检入我们公司的svn。效果很好。

该项目旨在在Windows上进行交叉编译。

直到现在,我只是简单地在OS之间移动了源文件。但是,我想我想让svn为我做这件事。应该够简单,只需将eclipse linux src结帐到VS项目目录中吧?错!

从svn检查了正确的来源,它工作正常。但当我试图检查它时,我一直收到“提交未完成文件名仍然存在冲突”错误。我甚至没有改变任何东西!

做了一点检查。原来linux src目录几乎就是源代码和头文件。在MSVS端,项目目录包含源和头,但也包含VS使用的一堆文件,其名称如projname.vcproj等。

所以,我做了一个结帐到一个临时指南,。\ fred。检查。\ fred回来。没问题。添加了一个新文件到.fred,xxx.xxx。登记入住:

svn: E200009: Commit failed (details follow):
svn: E200009: 'C:\Projects\fred\xxx.xxx' is not under version control

让我对这些未提交的Visual Studio文件感到疑惑。

那么,这些文件是我的问题吗?他们是否违反了提交操作?

作为替代解决方案,我正在考虑将VS文件添加到svn中的src目录中。如果linux / eclipse检查出来,我可以告诉eclipse忽略它们(我认为它只会忽略它们)。对这种方法的任何想法或建议?

(顺便说一下,我仍然在Linux端有新的来源,所以任何被破坏的东西都可以安全地恢复。)

1 个答案:

答案 0 :(得分:0)

所以这是我目前正在努力的一个解决方案。我不确定它是多么稳定。

警告:我正在使用的项目已作为MSVS项目存在。

在MSVS解决方案目录中,重命名源目录(MSVS喜欢源目录名称以匹配解决方案目录名称,这意味着源目录可能不会命名为src)解决方案中未涉及的内容,例如温度

SVN签出src(eclipse喜欢调用source dirs src )。

cd进入源目录。发出命令:

svn changelist msvs *.cpp *.h

如果需要,添加* .c。 “msvs”是更改列表名称。它可以是你想要的任何东西。

这将为签出目录创建一个更改列表。

现在,将 temp 目录中的其余文件复制到源目录中。

当您需要签入时,请进入源目录并发出以下命令:

svn ci --changelist msvs  

请注意。你必须在src目录中才能工作。