使用XUNIQUE解決XCODE項(xiàng)目文件沖突

在合并iOS項(xiàng)目時(shí)占拍,最讓人頭疼的就是項(xiàng)目文件沖突了沽讹。偏偏Xcode項(xiàng)目文件沖突的幾率又特別高宾符,只要項(xiàng)目文件被多個(gè)小伙伴同時(shí)修改,幾乎100%就會(huì)遇到?jīng)_突梗掰。而項(xiàng)目文件的格式也是復(fù)雜難懂嵌言,因此一旦遇到?jīng)_突,解決起來讓廣大開發(fā)者們都是分外頭疼及穗。
在神奇Google的指引下摧茴,我找到了解決項(xiàng)目文件沖突的工具---xUnique

xUnique原理

導(dǎo)致Xcode項(xiàng)目文件沖突的根本原因是節(jié)點(diǎn)的排列沒有固定次序埂陆,以及在不同的電腦上生成的節(jié)點(diǎn)的UUID并不相同苛白。
xUnique
是一個(gè)Python腳本,它能夠?qū)㈨?xiàng)目文件中的PBXFileReference和PBXBuildFile區(qū)塊排序焚虱,并且將UUID為永久不變的MD5 digest值购裙。只要把xUnique
與pre-commit鉤子綁定,每次提交項(xiàng)目文件時(shí)對(duì)其進(jìn)行序列化鹃栽,就能有效減少項(xiàng)目文件的沖突躏率。

安裝xUnique

[step 1]將xUnique

的代碼clone到本地

git clone git@github.com:truebit/xUnique.git
[step 2]安裝xUnique

進(jìn)入xUnique
源碼所在文件夾,執(zhí)行

sudo python setup.py install
[step 3]將xUnique

與git鉤子綁定
進(jìn)入需要綁定xUnique
的項(xiàng)目所在路徑民鼓,在終端中執(zhí)行

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

其中path
為項(xiàng)目的路徑薇芝,MyProject.xcodeproj
需要用項(xiàng)目的實(shí)際工程文件名來替代

[step 4]將pre-commit文件設(shè)置可執(zhí)行權(quán)限
chmod 555 .git/hooks/pre-commit

完成以上四步后,xUnique
就算是安裝成功了丰嘉,它將會(huì)在每次commit時(shí)執(zhí)行恩掷,自動(dòng)對(duì)項(xiàng)目工程文件進(jìn)行處理。
更多xUnique
介紹供嚎,請(qǐng)移步xUnique的github主頁

本文轉(zhuǎn)自:http://codingtime.me/post/posts/leng-zhi-shi/2015_01_16_xunique

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市克滴,隨后出現(xiàn)的幾起案子逼争,更是在濱河造成了極大的恐慌,老刑警劉巖劝赔,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件誓焦,死亡現(xiàn)場離奇詭異,居然都是意外死亡着帽,警方通過查閱死者的電腦和手機(jī)杂伟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來仍翰,“玉大人赫粥,你說我怎么就攤上這事∮杞瑁” “怎么了越平?”我有些...
    開封第一講書人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長灵迫。 經(jīng)常有香客問我秦叛,道長,這世上最難降的妖魔是什么瀑粥? 我笑而不...
    開封第一講書人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任挣跋,我火速辦了婚禮,結(jié)果婚禮上狞换,老公的妹妹穿的比我還像新娘避咆。我一直安慰自己,他們只是感情好哀澈,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開白布牌借。 她就那樣靜靜地躺著,像睡著了一般割按。 火紅的嫁衣襯著肌膚如雪膨报。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,370評(píng)論 1 302
  • 那天适荣,我揣著相機(jī)與錄音现柠,去河邊找鬼。 笑死弛矛,一個(gè)胖子當(dāng)著我的面吹牛够吩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播丈氓,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼周循,長吁一口氣:“原來是場噩夢啊……” “哼强法!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起湾笛,我...
    開封第一講書人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤饮怯,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后嚎研,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蓖墅,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年临扮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了论矾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡杆勇,死狀恐怖贪壳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情靶橱,我是刑警寧澤寥袭,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站关霸,受9級(jí)特大地震影響传黄,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜队寇,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一膘掰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧佳遣,春花似錦识埋、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至诵盼,卻和暖如春惠豺,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背风宁。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來泰國打工洁墙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人戒财。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓热监,卻偏偏與公主長得像,于是被迫代替她去往敵國和親饮寞。 傳聞我的和親對(duì)象是個(gè)殘疾皇子孝扛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理列吼,服務(wù)發(fā)現(xiàn),斷路器疗琉,智...
    卡卡羅2017閱讀 134,656評(píng)論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,116評(píng)論 25 707
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,810評(píng)論 6 342
  • 你不愿意種花冈欢,你說,我不愿看見它一點(diǎn)點(diǎn)凋落盈简。 是的,為了避免結(jié)束太示,你避免了一切開始柠贤。——顧城 十一點(diǎn)多类缤,困意襲來臼勉,...
    水若白閱讀 2,216評(píng)論 1 8
  • 創(chuàng)建對(duì)象 1. 構(gòu)造器創(chuàng)建對(duì)象 2. 通過克隆創(chuàng)建對(duì)象(內(nèi)存復(fù)制)實(shí)現(xiàn)Cloneable接口,重寫clone()方...
    迷茫o閱讀 217評(píng)論 0 0