1.使用CocoaPods 管理第三方库的时候,需要注意不要把Pod文件夹上传到版本管理服务器中
2.使用xcdoe的时候,还有一些个人用户数据也不要上传,可有效避免冲突的发生频率
3.团队开发的时候一定不要两个人同时操作同一个文件,否则会很容易产生冲突
4.当需要创建新文件的时候记得一定要先拉取一次服务器代码, 可能已经出现跟库(可能最新别人有提交)不一样的代码, 然后再创建新的文件,新文件创建完成后提交最新的项目,提交后提醒队员拉取一下。(其实xcode新建类的时候会修改项目的project.pbxproj文件)
当另一个成员也新建类文件,他项目中的project.pbxproj也会被修改, 这样就造成两个人同时修改同一个文件,一个人提交之后另一个人就提交不了了。
出现这种情况解决办法就是:按照先提交的那个人的文件结构(在xcode或者project.pbxproj文件或者sourceTree上查看)删除掉自己做的修改之前,一定要先把自己新建的类备份, 然后删除项目中的之前新建的文件, 然后从服务器中拉取一次, 之后再把新建的类拉进项目,提交一次服务器,就可以了。
5.团队开发时不要轻易修改文件结构,例如重排下某些类的顺序,因为这样做也会修改project.pbxproj文件, 这样提交到服务器的话, 成员在拉取代码的时候会提示冲突的。
6.两个成员同时修改了一个文件,A先提交了,B再提交就会出现文件冲突的提示, 这时B可以使用SourceTree的丢弃区块的功能放弃当前修改,解决冲突。如果需要的话,可以把该文件备份一下。
7.使用SourceTree忽略一些不需要版本管理的文件,操作如下图
![](https://images2018.cnblogs.com/blog/979044/201803/979044-20180309100827976-2070788480.png)
.gitignore文件编辑:
忽略指定文件:直接写文件名
忽略文件夹:直接写文件夹路径,例:target或者target/ -> 忽略target下的所有文件
忽略某类型的文件:使用通配符*,例:*.class -> 忽略所有.class文件
点击"编辑",添加下面这些
*~
.DS_Store
*.xcuserstate
*.xcworkspace
xcuserdata
*.lock
Pods
需要注意的是:commit编辑后的.gitignore文件,发现压根不起作用。最后得出的结论是,git有缓存,需要清理一下。你先本地提交一下自己的修改,然后逐个在终端运行以下命令就可以了。
git rm -r --cached .
git add .
git commit -m "fixed untracked files"
原文: https://www.jianshu.com/p/e61111f69a8f