【问题标题】:Quick guide to get started using Git + GitX with Xcode projects on the mac?在 Mac 上开始使用 Git + GitX 和 Xcode 项目的快速指南?
【发布时间】:2011-05-18 00:57:21
【问题描述】:

在 Mac 上使用 Git 感觉非常痛苦,而且 Git 文档简直太棒了。也许有人要分享一篇绝密的博客文章甚至截屏视频,可以相当简单快速地解释基础知识?

  • 创建存储库。大痛。

  • 使用 GitX 打开该存储库:痛苦。

  • 在 Xcode 中工作,然后提交更改:不知道,可能也很痛苦。

  • 将存储库克隆给使用自己的 mac 的其他一些开发人员,以便他们可以开始在项目上进行协作:天哪,我的头爆炸了……需要医生!

  • 以某种方式将那些克隆的存储库合并回来,这样每个人都可以获得一个包含其他人更改的更新存储库:红色警报!

现在我觉得我需要一个月的时间来了解它。如果有人能指出真正有用的资源,并且不会强迫我阅读几天,那将非常高兴……或者是否有一本伟大而薄的书来解释这种疯狂?

【问题讨论】:

  • 如果您将创建存储库并在 GitX(基本上是单个命令)中打开它描述为一种痛苦......我不确定您期望教程修复什么。

标签: xcode git macos gitx


【解决方案1】:

Git 绝对是巨大的,你当然可以花一个月的时间来学习它的流程,但你可以坚持一些基本概念,最终得到一个非常棒的工作流程。我使用命令行,因为它允许您坚持这些基础知识,并在需要时进行扩展。这些基本命令是“pull”、“push”、“init”、“commit -am “message””。稍后,您可以在gitref.org 阅读有关分支和变基的信息。

作为 mac Xcode + git 用户;我绝对推荐 DTerm 让生活更轻松。一个键命令会打开一个浮动终端窗口,CDed 到当前活动文件的目录。在 XCode 中,这意味着您将立即进入 git 控制的目录。

所以,我的工作流程--

  1. 在终端中使用“git init”创建仓库
  2. 创建 github 存储库
  3. 按照 github 说明将两者关联起来
  4. 在我的项目中工作时,按 Shift-Command-Enter 以显示浮动终端窗口
  5. 键入 "git commit -am "commit message" 以提交所有当前更改
  6. 相同的组合键加上“git pull”或“git push”分别用于从代码存储库中拉取更改或将更改推送到代码存储库

我发现命令行与 git 的工作关系比 GitX 更容易,尤其是在您使用 DTerm 之类的东西时。

如需参考,请查看gitref.org. 祝你好运!

【讨论】:

    【解决方案2】:

    启动终端窗口。

    创建存储库:

    cd project-dir
    git init
    

    在 GitX 中打开存储库:

    cd project-dir
    gitx
    

    提交更改:

    git status
    git add .  # or individual files
    git commit
    

    (最好从一开始就设置一个.gitignore 文件。)

    阅读Pro Git 书籍或查看git-scm.com 上的一些视频教程以快速入门。 Linus 的一个主要是对实现的描述以及对其他 VCS 的咆哮;第二个视频真的很有用。

    【讨论】:

      【解决方案3】:

      我在 OSX 下使用了 git 大约 6 个月(虽然不是用 Xcode)。这是一种享受!但是,是的,有时这是一段痛苦的经历和陡峭的学习曲线,尤其是当项目中的其他所有人都是 Windows 开发人员(有更多 git 客户端选择)和反 OSX(不愿意或无法提供帮助)时。但从长远来看,这是值得的。这是可行的!一旦你掌握了基础知识,你会发现它比 Subversion 好 10 倍。合并只是工作。冲突或多或少已成为过去。

      但我的建议是,忘记 GitX,这很垃圾。我从它开始,很快意识到它没有做(或者至少 18 个月没有做)任何你不能从命令行轻松做到的事情。它也少了很多。因此,无论如何,您最终最终都会进入终端……这是来自通常由于自己的无能而讨厌使用终端的人!如果你想要一个像样的前端客户端,试试 Syntevo 的 SmartGit。一旦我发现我很快就爱上了 Git。

      还推荐阅读 larsmans 提到的 Pro Git 电子书。

      【讨论】:

        【解决方案4】:

        理解 Git 的简单性很难。如果您对其他(集中式)版本控制系统有一些经验,请尝试忘记它们并了解 Git 的基本概念(对象、提交、分支......)。那里有很多书。我会推荐简短的(30 页长)Git from bottom up,它是免费的并且非常有用。另一个免费的学习资料在gitcastsPragprogpeepcode 也有很棒的书籍和截屏视频。它们不是免费的,但很有用。

        我将 git 与 XCode 一起使用了几个月,它们一起工作。尽管 XCode 没有将 git 列为受支持的版本控制系统,但您可以从命令行使用 git。我尝试使用 GitX,但从未发现它比命令行中的 git 更有用。试试看,也许它更适合你的习惯。

        对于 XCode,我发现这个 gitignoregitattributes 文件对我的项目很有用:

        .gitignore:

        # xcode noise
        build/*
        *.pbxuser
        *.mode1v3
        *.mode2v3
        *.perspective
        *.perspectivev3
        
        # osx noise
        .DS_Store
        profile
        
        # other
        .svn
        *.swp
        

        .git 属性:*.pbxproj -crlf -diff -merge

        【讨论】:

        • 不要将 *.pbxproj 标记为 -diff -merge。 pbxproj 文件格式被设计为可明显区分和合并。当您从多个人将文件添加到同一构建阶段或组中遇到冲突时,只需适当地解决这些冲突。
        【解决方案5】:

        我发现Git Book 是一个非常有用的资源。它用简单的术语解释了基础知识,并没有试图通过深入所有功能背后的技术推理来使事情变得过于复杂。至少这是我从中得到的。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-09-23
          • 2020-09-20
          • 1970-01-01
          相关资源
          最近更新 更多