Xit本地文件夹中的Git存储库

时间:2014-04-21 00:21:10

标签: xcode git xcode5

我正在研究一些可以在其他项目中重复使用的类。我将在完成后将第一个版本添加到github。该项目什么都不做,只是课程很有用。我不想提交整个Xcode项目。我只想提交与我合作的课程,因为这是人们将在他们的项目中复制的内容。 如果我推送整个项目,我必须要求类的用户深入研究项目并手动复制类,删除其余的。很脏。

所以我想出了一个解决方案。

  1. 我创建了一个普通的可可项目。
  2. 在项目内部,我在命令行中创建了一个文件夹,让我们说MyClasses
  3. 我在该文件夹中添加了类文件。
  4. 我通过引用将该文件夹添加到Xcode项目中,而不是复制。
  5. 然后在命令行中我在该文件夹中创建了一个git init,添加了所有文件,然后我进行了第一次提交。
  6. 到目前为止一切顺利。我正在使用Xcode提供的界面来管理存储库,它理解它只位于该文件夹中的git存储库。

    我的问题是,将来这会崩溃吗? Xcode是否准备以这种方式工作? 我想知道是否有人之前已经这样做了。通过这种方式,我可以将存储库专用于类,并排除与Xcode,nibs,plists等相关的所有文件。

    这将问题扩展到:是否可以在同一个Xcode项目中拥有多个存储库?我还没有尝试过。

1 个答案:

答案 0 :(得分:0)

因此,如果我理解正确,您希望使用git分发一些特定的Objective-C源文件,还要将它们包含在您自己的本地Xcode项目中,以便在Xcode中工作。

如果是这样的话,那就按照你的描述完成。换句话说:

  1. 将所有源文件(您要分发的文件)存储在单个目录中
  2. 在该目录中初始化一个git repo
  3. 将该目录添加到本地Xcode项目中,确保将相应的源文件添加到构建目标中。
  4. 您可以通过这种方式添加任意数量的单个存储库。

      

    将来会崩溃吗?

    不,配置不应导致任何崩溃。

    这种方法有一点需要注意,如果你有合作者。由于您不共享* .xcodeproj文件,因此当其他人修改文件结构或添加或删除文件时,您的构建设置和文件引用将不会更新。每次从远程执行时,您可能会发现自己必须手动更新本地项目中的文件引用,否则可能会遇到构建错误。

      

    Xcode是否准备以这种方式工作?

    根据我的经验,是的,它运作正常。如果您倾向于使用Xcode接口来管理git,请注意Xcode只能识别源控制下的文件,以便它已经检出"检出"。根据我所看到的情况,Xcode将自动为在当前项目目录或任何文件夹或组引用中找到的任何存储库执行此操作。

    此外,如果文件同时属于两个或更多个repos,则会出现问题; Xcode只会与其中一个进行互动,我不知道是否有任何选择方法。如果您没有嵌套您的存储库,这应该很容易避免。

    在Xcode 5中,您可以看到哪些git repos在"工作副本"在"源代码管理"菜单。 Xcode还可以告诉你每个文件属于哪个仓库,在" Source Control"在文件检查器中。

      

    是否可以在同一个Xcode项目中拥有多个存储库?

    是。您可以在Xcode项目目录下并排放置多个存储库,就像您可以在其他任何地方一样。实际上,您可以轻松地将您的repos放在文件系统的其他位置,并通过引用将它们添加到您的项目中;您不必将所有git repos / source文件存储在该目录中,以便工作。

    希望有所帮助。

相关问题