使用XUNIQUE解决XCODE项目文件冲突

在合并iOS项目时,最让人头疼的就是项目文件冲突了。偏偏Xcode项目文件冲突的几率又特别高,只要项目文件被多个小伙伴同时修改,几乎100%就会遇到冲突。而项目文件的格式也是复杂难懂,因此一旦遇到冲突,解决起来让广大开发者们都是分外头疼。

在神奇Google的指引下,我找到了解决项目文件冲突的工具---xUnique

xUnique原理

导致Xcode项目文件冲突的根本原因是节点的排列没有固定次序,以及在不同的电脑上生成的节点的UUID并不相同。

xUnique

是一个Python脚本,它能够将项目文件中的PBXFileReference和PBXBuildFile区块排序,并且将UUID为永久不变的MD5 digest值。只要把xUnique

与pre-commit钩子绑定,每次提交项目文件时对其进行序列化,就能有效减少项目文件的冲突。

安装xUnique

[step 1]将xUnique

的代码clone到本地

$ git clone https://github.com/truebit/xUnique.git

[step 2]安装xUnique

进入xUnique

源码所在文件夹,执行

$ sudo python setup.py install

[step 3]将xUnique

与git钩子绑定

进入需要绑定xUnique

的项目所在路径,在终端中执行

$ { echo '#!/bin/sh'; echo 'python -mxUnique path/Project.xcodeproj'; } > .git/hooks/pre-commit

其中path

为项目的路径,MyProject.xcodeproj

需要用项目的实际工程文件名来替代

[step 4]将pre-commit文件设置可执行权限

$ chmod 555 .git/hooks/pre-commit

完成以上四步后,xUnique

就算是安装成功了,它将会在每次commit时执行,自动对项目工程文件进行处理。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在合并iOS项目时,最让人头疼的就是项目文件冲突了。偏偏Xcode项目文件冲突的几率又特别高,只要项目文件被多个小...
    Super_Yi阅读 6,678评论 4 1
  • https://raw.github.com/truebit/xUnique/gif/xUnique_Build_...
    拿破轮胎阅读 4,363评论 0 1
  • 什么是Git Hooks? 话说,如同其他许多的版本控制系统一样,Git也具有在特定事件发生之前或之后执行特定脚本...
    茗涙阅读 13,907评论 0 7
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 9,161评论 0 10
  • 进入我的博客,了解更多! 关于 Git Hooks Git 是一个分布式版本控制系统,目前最流行的版本控制系统之一...
    Lizhg阅读 10,243评论 0 1

友情链接更多精彩内容