引言
之前文章列出的xib的缺點當中,我想在代碼管理上,文件容易沖突是比較典型、且重要的問題,那么在詳細學習xib之前,先來學習解決文件沖突的問題會讓大家的學習更有積極性。
注:xib與SB文件的沖突問題是一樣的,解決方法也一樣。
為什么xib、SB文件會很容易沖突?
因為xib文件十分容易造成修改,它不像源文件中的代碼,必須真正修改才算,xib和SB文件,只要你點開,不經意的點擊幾個控件看看,就很容易造成了文件的修改,因為你很容易把控件挪動了1、2個像素,而你自己不知道,我們之前說過xib文件其實是以xml形式存儲的,你挪動了1、2個像素這個文件也算修改過了。
如何避免xib、SB文件造成沖突?
1.最好在分工上就使得一個xib或SB文件單獨由一個人負責開發、修改。
xib做到這一點相對容易,因為它和源文件最多是一對一的關系(有時可以沒有源文件而直接使用),
SB一般與源文件是一對多的關系,如何把每個人負責的任務對應到自己的SB文件中?這個時候可能要用到storyboard reference,我們在一天一點xib:9結束語中會講到這個問題。
2.在修改xib、SB文件的時候加鎖(這個是代碼管理層次上的問題,其實必要性不大,操作也繁瑣)
3.提交代碼的時候看清楚有沒有提交xib、SB文件,弄清楚這個提交是自己要修改的,還是不小心就修改了。
如果沖突已經產生了,如何解決沖突?
一天一點xib:2初識xib提到過,xib、SB文件有兩種查看方式,當文件沖突的時候普通的interface builder方式打開文件會失敗。

此時右鍵該xib或SB文件,選擇source code方式打開文件,之后解決沖突的思路與解決project.pbxproj文件沖突的方式是一樣的,文件中全局搜索<<<<或>>>>定位到錯誤位置,根據實際情況,刪除一個版本的代碼,保留另一個版本的代碼,直到文件中所有沖突都解決掉。

上圖是我模擬storyboard中的沖突,沖突原因是兩個人共同修改了一個label上的文字,解決方法就是根據實際需要保留一個版本的代碼刪除另一個版本的代碼,和<<<<<、>>>>>>、======等東西就可以了。
總結
學會了解決文件沖突,我們就更加有信心、有動力地去學習xib了。
歡迎大家和我交流溝通,若文章中有錯誤和紕漏,懇請指正,謝謝。