xcode - Xcode 首选项中的 "Source Tree"是什么,我可以用它做什么?

标签 xcode

我最近一直在研究如何在一个项目或多个项目中管理源文件。我读过 Xcode 内置了对使用 svn 的支持,并且也将支持 git,我发现这两者都非常有用。

我无法清楚理解的一件事是关于 Xcode 项目管理指南中描述的源代码树。这是我的理论,但由于我无法从任何地方真正验证这一点(据我所知),我真的很想有人能说出我所缺少的,如果有的话。

  • Xcode 首选项中的源树更像 a root源树,它是我本地文件系统中的一个文件夹。
  • 我可以在我的任何 Xcode 项目中使用任何文件,即使这些文件不在项目文件夹中,只要我可以指定与我的源代码树之一相关的文件位置。
  • 现在有人拥有与我同步的相同项目文件夹。她拥有项目文件夹中的所有文件,但源树的相对位置所引用的文件可能存在于项目文件夹之外。
  • 但她有一个源代码树,与 Setting Name 相同到我的,(但绝对在她本地文件系统的不同文件夹中),如果她在相同的相对位置有文件,那么她的 Xcode 可以毫无问题地访问该文件。

  • 那么这是否正确,我们使用源代码树是因为它使我们能够与项目文件夹之外的文件进行协作?

    即使项目文件夹之外的文件被项目文件夹本身的相对路径引用(而不是源代码树),如果这些文件都由 SVN 管理,那么它们存在于每个人的项目文件夹的相同相对位置环境,那么我就不需要源代码树了,对吧?

    最佳答案

    我从不认为我是 Xcode 的专家,但您的问题似乎有一段时间没有得到回答,所以也许值得评论一下我能说的话:

    你所描述的和它差不多。 Think是操作系统的环境变量。例如,通常在 Autotools 制作的构建系统中,文件由相对路径引用,例如 $PROJECT_HOME/src/common/error.cpp .无所谓$PROJECT_HOME位于每个用户的本地文件系统中,只要文件可以通过用户的 $PROJECT_HOME 的相对路径访问目录。

    是的,如果用于项目的整个文件夹层次结构由项目主页的相对路径引用并且以某种方式可以确定每个人在同一位置具有相同的文件(例如,因为如您所说,版本控制存储库包含一个 block 中的每个文件)。

    但是,我认为最好保留所有文件项目主文件夹,除非它们在多个项目中使用,因此您的版本控制存储库仅包含项目的单个根目录(项目主目录)。如果有最好由多个项目共享的文件,那么我将为这些文件设置一个单独的存储库。在这种情况下,您的所有同事都必须使用相同的协议(protocol),例如,拥有一个具有相同设置名称的源树,并将从您的版本控制服务器检索到的所有项目主目录直接放在源代码树下(因此可以引用项目主目录之外的文件与所有程序员的源代码树有关)。

    我的大部分答案是对您已经描述的内容进行改写,但这就是我使用 source trees 的方式。我自己在 Xcode 中的功能。也许其他人可以告诉你更多关于它的信息。

    关于xcode - Xcode 首选项中的 "Source Tree"是什么,我可以用它做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4982133/

    相关文章:

    ios - ios 10 的模拟器 .app 在 ios 8 中不起作用

    ios - 清理和删除 DerivedData 文件夹的区别

    ios - Xcode 8中Interface Builder的问题

    ios - 如何根据SceneKit中的一些变量控制3D对象的位置(或旋转)?

    xcode - iTunes Connect Transporter - 查找 - GameCenter 排行榜设置不是元数据的一部分

    iphone - 如何从 plist 中获取乌尔都语单词?

    xcode - 升级到 OS X Lion 后我应该如何升级 Xcode?

    iOS,找不到合适的图像/缺少所需的代码签名

    ios - Xcode 8.0 Command/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc 失败,退出代码为 1

    ios - 如何更改 iPad 的 iAd 横幅 View 大小