Mac下SVN提交xcode工程代码需要过滤的文件

SVN客户端工具我用的是cornerstone

在.subversion-->config中需要设置下面两段

1.找到下面一行

### Section for configuring automatic properties.
[auto-props]

2.在后面添加

*.mode* = svn:mime-type=text/X-xcode
*.pbxuser = svn:mime-type=text/X-xcode
*.perspective* = svn:mime-type=text/X-xcode
*.pbxproj = svn:mime-type=text/X-xcode


3.找到下面一行

global-ignores =

=号后面为需要忽略的文件的后缀名,如果是提交xcode工程,在后面加上

.DS_Store build *~.nib *.pbxuser *.mode *.perspective* 
  xcuserdata xcshareddata Pods *.xcuserstate *.pbxuser Podfile.lock

一、iOS开发中可以忽略的文件

1、project.pbxproj:项目文件,需要提交svn。

2、project.xcworkspace:空间可以将多个project和其它文件放到一起。一个project也可以属于多个workspace。需要提交svn。

3、user.pbxuser文件Xcode项目为每一个使用这个项目的用户创建一个user.pbxuser文件,存储了此用户对项目的偏好设置,如Xcode的位置和大小、文件书签等。可以看到这个文件是针对某个用户的,可以说是私人性质的,跟整个项目没有太大关系,所以一般不需要同步。

4、user.mode1v3和user.mode2v3文件这个也是用户相关的文件,和user.pbxuser差不多,存储某用户特定的项目设置,比如Xcode中window的状态和结构,断点等等。因此也不需要同步。

5、xcuserdata目录/xcshareddata目录 :和上面两种一样,也是用户相关的文件,包含user state,folders的状态,最后打开的文件等。 一般来说是不需要同步的。例外是,这个目录里也包含了scheme相关的内容。如果项目里需要同步特定的scheme,这时候,需要在Edit Scheme里,勾选Share框,然后把新生成的xcshareddata目录提交上去。

.xccheckout:这个文件在xcworkspace目录里。.xccheckout文件包含了关于workspace中用到了什么repo的数据。根据说明,它的规则和xcworkspace差不多:如果没用过,或者只是简单使用workspace,不需要同步;如果深入使用workspace,则需要同步。

二、Cornerstone忽略不必要的文件

Cornerstone——>Preference——>Subversion——>Global ignores中添加,去掉“use default global ignores”即可。

Cornerstone忽略不必要的文件

三、用命令行忽略文件

若要设置忽略xcuserdata目录,需要:

  1. cd到*.xcodeproj目录下面
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/Libraries/blur/blur.xcodeproj

  2. 执行:
    svn propset svn:ignore xcuserdata .

  3. 退到工程根目录
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/

  4. svn st
    M Libraries/blur/blur.xcodeproj

  5. svn ci

搞定。


与双系统无关。在Mac OS上会存在。

DS_Store 是用来存储这个文件夹的显示属性的:比如文件图标的摆放位置。删除以后的副作用就是这些信息的失去。(当然,这点副作用其实不是太大)

需要注意一点:project.pbxproj这个文件是用来记录工程目录结构的,例如你加两个类,拖动一个类的位置,这个文件都会有变化,在合作开发过程中,最好不要忽略这个文件,但需要跟伙伴提前约定好,每次需要更改工程目录的时候,需要先更新,再增加或修改类,再提交,最好沟通一下,因为工程大了,这个文件要是起冲突了,就不好改了,会导致工程无法打开。


(补充)忽略已经加入SVN版本控制的文件(夹)

上面的方法只适用于还未添加进版本控制的文件,如果是已经添加进版本控制的文件需要先将其从版本控制中删除才会生效

删除文件(以UserInterfaceState.xcuserstate为例,这里已经进入UserInterfaceState.xcuserstate目录下,也可替换为文件的绝对路径)

svn rm --force UserInterfaceState.xcuserstate
svn commit -m "忽略该死的UserInterfaceState.xcuserstate"



一、iOS开发中可以忽略的文件

1、project.pbxproj:项目文件,需要提交svn。

2、project.xcworkspace:空间可以将多个project和其它文件放到一起。一个project也可以属于多个workspace。需要提交svn。

3、user.pbxuser文件Xcode项目为每一个使用这个项目的用户创建一个user.pbxuser文件,存储了此用户对项目的偏好设置,如Xcode的位置和大小、文件书签等。可以看到这个文件是针对某个用户的,可以说是私人性质的,跟整个项目没有太大关系,所以一般不需要同步。

4、user.mode1v3和user.mode2v3文件这个也是用户相关的文件,和user.pbxuser差不多,存储某用户特定的项目设置,比如Xcode中window的状态和结构,断点等等。因此也不需要同步。

5、xcuserdata目录/xcshareddata目录 :和上面两种一样,也是用户相关的文件,包含user state,folders的状态,最后打开的文件等。 一般来说是不需要同步的。例外是,这个目录里也包含了scheme相关的内容。如果项目里需要同步特定的scheme,这时候,需要在Edit Scheme里,勾选Share框,然后把新生成的xcshareddata目录提交上去。

.xccheckout:这个文件在xcworkspace目录里。.xccheckout文件包含了关于workspace中用到了什么repo的数据。根据说明,它的规则和xcworkspace差不多:如果没用过,或者只是简单使用workspace,不需要同步;如果深入使用workspace,则需要同步。

二、Cornerstone忽略不必要的文件

Cornerstone——>Preference——>Subversion——>Global ignores中添加,去掉“use default global ignores”即可。

Cornerstone忽略不必要的文件

三、用命令行忽略文件

若要设置忽略xcuserdata目录,需要:

  1. cd到*.xcodeproj目录下面
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/Libraries/blur/blur.xcodeproj

  2. 执行:
    svn propset svn:ignore xcuserdata .

  3. 退到工程根目录
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/

  4. svn st
    M Libraries/blur/blur.xcodeproj

  5. svn ci

搞定。


一、iOS开发中可以忽略的文件

1、project.pbxproj:项目文件,需要提交svn。

2、project.xcworkspace:空间可以将多个project和其它文件放到一起。一个project也可以属于多个workspace。需要提交svn。

3、user.pbxuser文件Xcode项目为每一个使用这个项目的用户创建一个user.pbxuser文件,存储了此用户对项目的偏好设置,如Xcode的位置和大小、文件书签等。可以看到这个文件是针对某个用户的,可以说是私人性质的,跟整个项目没有太大关系,所以一般不需要同步。

4、user.mode1v3和user.mode2v3文件这个也是用户相关的文件,和user.pbxuser差不多,存储某用户特定的项目设置,比如Xcode中window的状态和结构,断点等等。因此也不需要同步。

5、xcuserdata目录/xcshareddata目录 :和上面两种一样,也是用户相关的文件,包含user state,folders的状态,最后打开的文件等。 一般来说是不需要同步的。例外是,这个目录里也包含了scheme相关的内容。如果项目里需要同步特定的scheme,这时候,需要在Edit Scheme里,勾选Share框,然后把新生成的xcshareddata目录提交上去。

.xccheckout:这个文件在xcworkspace目录里。.xccheckout文件包含了关于workspace中用到了什么repo的数据。根据说明,它的规则和xcworkspace差不多:如果没用过,或者只是简单使用workspace,不需要同步;如果深入使用workspace,则需要同步。

二、Cornerstone忽略不必要的文件

Cornerstone——>Preference——>Subversion——>Global ignores中添加,去掉“use default global ignores”即可。

Cornerstone忽略不必要的文件

三、用命令行忽略文件

若要设置忽略xcuserdata目录,需要:

  1. cd到*.xcodeproj目录下面
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/Libraries/blur/blur.xcodeproj

  2. 执行:
    svn propset svn:ignore xcuserdata .

  3. 退到工程根目录
    cd /Xcode_Project/Qzone-for-iPhone_WorkingCopy/iphone_qzone_proj/trunk/src/

  4. svn st
    M Libraries/blur/blur.xcodeproj

  5. svn ci

搞定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值