【问题标题】:sharing source between Linux eclipse and MS Visual Studio在 Linux eclipse 和 MS Visual Studio 之间共享源代码
【发布时间】:2012-12-26 15:02:06
【问题描述】:

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

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

到目前为止,我只是在操作系统之间移动了源文件。但是,我想我想让 svn 为我做这件事。应该很简单,只需将 eclipse linux src 检出到 VS 项目目录中,对吗?错了!

从 svn 中检查了正确的源,并且运行良好。但是当我尝试重新检查它时,我不断收到“提交未完成 filename 仍然存在冲突”错误。我什至没有改变任何东西!

做了一点检查。原来 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 方面仍然有新的源代码,所以任何被破坏的东西都可以安全地恢复。)

【问题讨论】:

  • 你svn添加MSVS文件了吗?
  • 我会将 MSVC 文件与源文件分开(即将它们放在不同的目录中),以便您可以独立检入和检出它们。
  • @ArneMertz 请帮助我的无知:我可以将两个项目签出(和签入)到同一个目录中吗?如 svn co "......\src" fred 后跟 svn co "..\MSVS" fred 哪里 fred 是 VS 项目中的客户端目录?这将是一个很好的解决方案!
  • @JesusRamos 还没有。等待建议。真的很喜欢 Arne Mertz 的想法!
  • @ArneMertz 答案似乎是“不”。至少从我快速而肮脏的测试来看

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


【解决方案1】:

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

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

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

SVN checkout src(eclipse 喜欢调用源目录src)。

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

svn changelist msvs *.cpp *.h

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

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

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

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

svn ci --changelist msvs  

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

【讨论】:

    猜你喜欢
    • 2017-03-28
    • 2014-07-07
    • 1970-01-01
    • 2015-08-13
    • 2012-10-22
    • 2014-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多