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忽略一些不需要版本管理的文件,操作如下图

.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

使用sourceTree需要注意的地方的更多相关文章

  1. Git SourceTree 冲突解决方案

    Git现在越来越火,很多人都从Svn迁移到Git上面,Git让我们更加与世界接轨,不再是"局域网"的程序猿,特别是掌握了Git之后,会发现它真的很好用,本文对Git中比较烦人的冲突 ...

  2. SourceTree不出现用户登录窗口,提示错误fatal: unable to access'...'; error setting certificate verify locations

    SourceTree不出现用户登录窗口,提示错误fatal: unable to access'...'; error setting certificate verify locations; .. ...

  3. 【转】SourceTree的简单使用

    原文网址:http://blog.csdn.net/u011439289/article/details/42126507 今天开始参与公司项目的代码编写,公司内部采用的是gitlib,所以用到了So ...

  4. SourceTree 无法查看组织仓库

    error log: Pushing to remote: Repository not found. 在使用SourceTree进行版本控制,代替git命令行,而且作为免费 跨平台 功能完备的git ...

  5. SourceTree 实现 git flow 流程

    为什么使用 git 和 git flow,这篇文章 深入理解学习Git工作流 的内容相信能够给你一个完整的答案. 我们以使用SVN的工作流来使用git有什么不妥? git 方便的branch在哪里,团 ...

  6. git之sourceTree使用github和码云的代码小结

    16.使用git出现的错误记录  15. Permission denied (publickey)错误: git远程库与本地库同步 git设置ssh公钥 Bad escape character ' ...

  7. Git-简单的利用SourceTree提交代码

    解决办法: 小编也是新手,所以在使用SourceTree上面花了不少时间,好在简单的拉去远程代码,同步本地仓库代码搞定了.下面是步骤: 1.我们先去下载一个SourceTree然后打开. 2.下一步, ...

  8. 上传本地文件到github(码云)上(小乌龟方式,sourcetree方式)

    一:上传文件到 github 1.打开 https://github.com/ 登录github账号(没有的自己创建),点击右上角创建新仓库 在打开的页面中填写  名字 点击 Create repos ...

  9. SourceTree的简单使用

    原文网址:http://blog.csdn.net/u011439289/article/details/42126507 今天开始参与公司项目的代码编写,公司内部采用的是gitlib,所以用到了So ...

随机推荐

  1. sqlserver流程控制(待续)

    if else: if(1=1) begin--必须1个=号print '111'--begin end 之间必须要有内容end else beginprint '222'end while: DEC ...

  2. [leetcode]206. Reverse Linked List反转链表

    Reverse a singly linked list. Input: 1->2->3->4->5->NULL Output: 5->4->3->2- ...

  3. 怎样在Windows与Centos下的Linux间共享文件,如果mnt文件夹不显示,可能是mnt缺少共享支持

    mnt中的hgfs文件夹就是Linux系统中挂载共享文件的默认文件夹.有的人按步骤共享之后mnt中没有出现共享的文件,可能是因为你的mnt缺少共享支持. 此时可以在Terminal中输入:sudo m ...

  4. Java面向对象理解_代码块_继承_多态_抽象_接口

    面线对象: /* 成员变量和局部变量的区别? A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生 ...

  5. Java程序设计——对象序列化

    对象序列化的目标是将对象保存到磁盘中或允许在网络中直接传输对象,对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久保存在磁盘上,通过网络将这种二进制流传输到另 ...

  6. PHP 微信公众号开发 - 消息推送

    项目微信公众号开发,需要做用户消息推送,记录下来以便日后使用 1,接上一篇文章,可以查看如何获取用户openid PHP 微信公众号开发 - 获取用户信息 2,添加模板消息 3,查看模板详情 根据模板 ...

  7. swift学习之UIButton

    // //  ViewController.swift //  button // //  Created by su on 15/12/7. //  Copyright © 2015年 tian. ...

  8. [转]ASP.NET Web API对OData的支持

    http://www.cnblogs.com/shanyou/archive/2013/06/11/3131583.html 在SOA的世界中,最重要的一个概念就是契约(contract).在云计算的 ...

  9. Debug_with_docker_in_pycharm

    Debug with docker in pycharm Why As I really really appreciate it that we can have a isolated develo ...

  10. SqlLocalDB 的一些常用命令行

    Once installed, you can interact with SqlLocalDb using the command line. The following will tell you ...