【问题标题】:Shared Folders and XCode共享文件夹和 XCode
【发布时间】:2009-11-29 03:35:30
【问题描述】:

有没有办法让 XCode 能够很好地处理共享文件夹并允许多人同时使用 iPhone 应用程序?还是我们需要切换到更像 SubEthaEdit 或其他一些实时协作工具的东西?

【问题讨论】:

  • 如果您没有在其他地方使用 SCM,那么本地 subversion 存储库怎么样。

标签: iphone xcode collaboration real-time


【解决方案1】:

众所周知,Xcode 对文件系统的处理非常糟糕。管理项目时,您有两种选择,将文件夹添加为组或文件夹引用。

如果你添加一个组,那么文件夹会被镜像到 Xcode 中,但是组不会和文件系统同步,也就是说你可以在组内移动东西,删除组,不会碰FS, reverse 会使 Xcode 丢失文件。

第二个选项,添加文件夹引用听起来很不错,但完全是错误的。文件夹引用可能无法正确更新,文件夹中未检测到更改(如果您将图像文件夹引用添加到资源并更新内容,您的资源将不会在下一次构建时更新,您必须清理和重建)。

这就是为什么您不应该使用 Xcode(我们在这里使用 vim + SCons 并且对此非常满意)或者您需要使用 SCM(SCM 也可以与其他工具结合使用,无论如何您都应该使用 SCM) .

至于SCM我推荐Mercurial,但也有SVN和Git等很多,建议你google一下,发表你的意见。

【讨论】:

    【解决方案2】:

    如果您使用 SCM,目前最好的方法是签入 project.pbxproj 文件(在您的 .xcodeproj 包中)。大多数情况下合并就好了,有时您必须手动合并,但在这些情况下,90% 的时间您只需允许合并的双方。

    我的 .gitignore 文件如下所示:

    # xcode noise
    build/*
    *.pbxuser
    *.mode1v3
    *.perspectivev3
    *~
    *.mode2v3
    

    您可以对其他 SCM 系统使用类似的忽略指令集。

    文件夹引用适用于图像(需要注意的是,如果您更改任何图像内容,则必须进行清理),但不适用于源。

    【讨论】:

      【解决方案3】:

      让多个人在一个共享文件夹上工作是灾难的根源,当有人第一次覆盖您大部分时间都在编辑的文件时,您会后悔的,因为他们想更新其中的评论。

      获取 SCM 并让每个人都将他们的代码签出到他们自己的私人文件夹中。

      当你的构建速度更快时你也会更开心,因为你是在本地磁盘而不是网络磁盘上构建的。

      【讨论】:

      • icefire,这是您应该选择的答案。创建像 Subversion 这样的代码管理系统正是为了处理这类问题。为工作使用正确的工具。
      【解决方案4】:

      如果您正在寻找实时协作,即两个或多个程序员实际上同时将相同的代码写入同一个文件,您将需要使用像 subethaedit 这样的协作编辑器。您可以将 subethaedit 设置为 Xcode 中源文件的首选编辑器。

      这样,您就有了一名程序员来主持 Xcode 项目,他在 subethaedit 中打开源文件。然后其他程序员通过 subethaedit 登录到该文件。然后托管程序员在他的本地 Xcode 中编译代码。

      但是,正如上面 Rudedog 的评论中所述,如果您只想让多个人处理同一个项目但处理不同的文件,您应该使用代码管理工具。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多