繁体   English   中英

什么是Xcode首选项中的“源树”,我可以用它做什么?

[英]What is “Source Tree” in the Xcode preferences and what can I do with it?

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

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

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

这是正确的,我们使用源树,因为它使我们能够与项目文件夹之外的文件协作?

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

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

你所描述的几乎就是它。 Think是一个操作系统的环境变量。 例如,通常在由Autotools构建的构建系统中,文件由相对路径引用,例如$PROJECT_HOME/src/common/error.cpp 只要文件可以通过用户的$PROJECT_HOME目录的相对路径访问,每个用户的本地文件系统中$PROJECT_HOME都无关紧要。

是的,如果用于项目的整个文件夹层次结构由项目主页的相对路径引用,并且确定每个人在同一位置具有相同的文件(例如,因为这样),则不需要使用源树。版本控制存储库包含一个块中的每个文件,如你所说)。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM