search

Home  >  Q&A  >  body text

xcode - 如何用git管理ios/mac os项目工程

之前我们用git来对一个ios软件的代码做版本控制。
可是,由于xcode的工程目录.xcodeproj有很多配置文件。当我们提交的或者更新的时候就会出现冲突。

有什么比较好的方案吗?

伊谢尔伦伊谢尔伦2772 days ago655

reply all(3)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-17 11:00:02

    除@joyqi 提到的http://segmentfault.com/question/23/%... 以外,project.pbxproj文件也经常出现冲突,可用以下脚本解决冲突:

    #!/bin/sh
    
    projectfile=`find -d . -name 'project.pbxproj'`
    projectdir=`echo *.xcodeproj`
    projectfile="${projectdir}/project.pbxproj"
    tempfile="${projectdir}/project.pbxproj.out"
    savefile="${projectdir}/project.pbxproj.mergesave"
    
    cat $projectfile | grep -v "<<<<<<< HEAD" | grep -v "=======" | grep -v "^>>>>>>> " > $tempfile
    cp $projectfile $savefile
    mv $tempfile $projectfile

    通常冲突都可自动解决,如运行脚本后仍然无法解决冲突,可使用project.pbxproj.mergesave恢复为原来版本后,手动解决。

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-17 11:00:02

    请参考

    http://segmentfault.com/question/23/%...

    reply
    0
  • 迷茫

    迷茫2017-04-17 11:00:02

    .xcodeproj的配置文件可以分成两种, 一种是整个团队应该share的,比如你的xcode目录里面有什么文件, 这些一般git merge可以自动处理。偶尔有conflict也是正常的 - 比如我加了resource A,你加了resource B... 直接用编译器改好,然后 git add, git commit 就行了。

    另外一部分是个人设定, 这些不应该放到git里面, 可以通过.gitignore 忽略。

    reply
    0
  • Cancelreply