【问题标题】:Can git be integrated with Xcode?git可以与Xcode集成吗?
【发布时间】:2010-10-02 04:01:03
【问题描述】:

有没有办法使用带有 Xcode 内置 SCM 功能的 git 存储库?

【问题讨论】:

  • 有望很快正式发布?:twitter.com/pjhyett/status/15685549082
  • Xcode 4 处于测试阶段(尚未开放下载)并内置了 Git 支持。
  • @Kendall:虽然 Xcode 4 开发者预览版仍然不是一般下载,但它现在可供所有付费开发者帐户使用。
  • 既然 Xcode4 GM 已经出来了,这个线程应该更新...
  • 郑重声明:XCode 4 现已推出,对 OSX Lion 用户免费

标签: xcode git version-control integration


【解决方案1】:

Xcode 4 原生支持 git(开发者工具在 WWDC 2010 上发表国情咨文)

在此处了解更多信息:What's new in Xcode 4
Apple 的documentation 很长,但值得一读。

【讨论】:

  • 这真是太棒了。有关于 Mercurial (hg) 支持的消息吗?
  • 它没有出现...插件系统上没有任何消息。
  • :D 这让我很开心!等不及了。
  • 天哪!我不知道...这让我很高兴...关于发布日期的任何消息?
  • 文档链接已损坏
【解决方案2】:

注意:尽管有很多人赞成,但截至 2010 年 6 月,此答案已过时


Xcode没有 git 支持,但这不是不将 git 用于 Xcode 项目的理由。我使用标准 git 命令行或GitX 管理我的 Xcode 项目取得了很好的效果。

Shane Vitarana 有一组不错的 .gitignore settings 可用作起点。

【讨论】:

  • 将这两个添加到我的 .gitignore 会导致克隆的 xcode 构建损坏。
【解决方案3】:

将 git 与 Xcode “集成”的一个好方法是使用 DTerm。您使用组合键在浮动窗口中调出 DTerm。 DTerm 知道编辑器中当前文档的完整路径。

例如,在您正在编辑的文件上运行差异:

1) 按 Ctrl-Return 调出 DTerm 窗口。 (此组合键是可配置的)。

2) 键入“git diff cmd-shift-V”。当您开始键入并在窗口中插入当前文件的名称时,这将覆盖最后一个命令。由于您的工作目录设置为所选文件的父目录,因此该命令非常简洁。

我和德西莫斯一点关系都没有。我只是一个满意的用户,通过 DTerm 运行了数千条命令。

编辑:从 2009 年 8 月 27 日起,DTerm 是免费的。如果您购买了 DTerm 副本,则无论您何时购买 DTerm,都可以免费升级到下一个版本。见他们的blog post

编辑 2DTerm 现已在 Mac App Store 上提供。看看他们是否遵守了他们在blog post. 中做出的承诺将会很有趣

【讨论】:

  • 马克——你不知道你让我有多开心。我不敢相信我一直没有 DTerm!
  • 我遇到了一个小问题:它是 cmd-shift-V 而不是 ctrl-shift-V。
  • Dterm 绝对太棒了!!! ——当它起作用时。他们的最新版本和最新的 10.6.6 非常有问题。我会杀了这个工作正常!
  • 尝试删除首选项文件。我没有遇到任何问题。我已经使用它很长时间了。您的登录是否使用英语作为语言和字符输入?
【解决方案4】:

除了上面帖子中引用的 .gitignore 设置之外,我还将生成的文件添加到我的配置文件中。

构建/
*.pyc
*~.nib/
*.pbxuser
*.perspective
*.perspectivev3
*.xcworkspace/
xcuserdata/

这有助于将噪音排除在我的仓库之外。

如果我需要添加生成的文件,我会添加一个 Release 文件夹并将 *.framework 和 *.app 文件夹保存到我的项目目录中。我将发布到测试组的任何内容添加到 Release 文件夹并标记它。

【讨论】:

    【解决方案5】:

    不,没有,老实说,我很感激,因为 Xcode 中的 SVN 支持对我来说似乎真的很不稳定。在我为我的个人项目迁移到 Git 后,我​​只打开了一个终端窗口,我可以根据需要启动 git addgit commit

    【讨论】:

      【解决方案6】:

      Xcode 没有公开的插件 API,所以不,没有办法直接在 Xcode 中添加对 git 的支持。

      但是,您可以为 Xcode 的脚本菜单创建可以执行各种 git 操作的脚本。

      【讨论】:

        【解决方案7】:

        我不相信有办法为 Xcode 提供插件支持。因此,在 Apple 热身到 git 之前,我们将只能使用 3rd 方工具和命令行。并不是说那是一件坏事……

        【讨论】:

          【解决方案8】:

          嗯,有一个叫做 git-cvsserver 的东西可以让 git 假装它是 CVS。但我不知道这方面的情况,也不知道 Xcode 中的 CVS 支持。

          【讨论】:

            【解决方案9】:

            最新的 Xcode 4 beta 集成了 git,但是,它默认不安装它,也不使用你当前安装的 git。

            我要做的是在 Xcode 安装程序中安装“系统工具”选项。 (默认跳过)之后,主办方发现我的项目已经在git控制下,并且顺利集成。

            【讨论】:

              【解决方案10】:

              使用 Xcode 4,如果您想使用自己的 Git 版本,您可以创建一个从 /usr/bin/git 到安装 Git 二进制文件的位置的符号链接

              【讨论】:

                【解决方案11】:

                使用最新的 Xcode 4.1 这绝对是可能的,并且默认安装了您需要的一切。

                我写了一篇关于这个主题的博文:

                Xcode iPhone beginner projects with GitHub integration

                【讨论】:

                  【解决方案12】:

                  您可以将 Xcode 与 Git 存储库一起使用。 Visual Studio Team Services 在云中提供 free, private, and unlimited Git repos。您不仅可以使用 Xcode,还可以使用 Eclipse、Visual Studio、Team Services 自己的 Web 浏览器界面或您喜欢的任何其他编辑器/IDE。也可以免费与前 5 位用户共享代码。

                  YouTube 视频:https://youtu.be/S83kn0i4WYs

                  【讨论】:

                    【解决方案13】:

                    我还是使用外部编辑器。其中许多支持 git 命令。这样,git就被“集成”到Xcode中了

                    【讨论】:

                    • 你能举一个在mac上集成git的外部编辑器的例子吗?
                    【解决方案14】:

                    我想知道,是否可以使用 Xcode 脚本功能完成包装器? 检查:http://www.cimgf.com/category/version-control/git/

                    顺便说一句,如果 Xcode 不能完成这项工作,eclipse 可以完成这项工作,但它可能缺少 Cocoa api 等......

                    【讨论】: