Xcode仿Cocoapods自动化锁定文件(locked file)

栏目: IOS · 发布时间: 5年前

内容简介:最近在做这样一个需求,打包项目时读取本地配置文件,根据配置文件的不同呈现不同版本或者模块,当然实际比以上描述更复杂些。由于软件的逻辑是基于配置文件来启动运行的,这时我们面临了一个问题,怎么防止同伴误操作配置文件?

最近在做这样一个需求,打包项目时读取本地配置文件,根据配置文件的不同呈现不同版本或者模块,当然实际比以上描述更复杂些。由于软件的逻辑是基于配置文件来启动运行的,这时我们面临了一个问题,怎么防止同伴误操作配置文件?

正文

当然,解决这一类问题,有很多方案,比如,svn/git锁定该文件;再比如将配置文件作为一个私有pods,让pods来实现锁定功能;

Xcode仿Cocoapods自动化锁定文件(locked file)

便于每次同伴误操作时会提醒;

Xcode仿Cocoapods自动化锁定文件(locked file)

以上的方式也还不错,但总觉得啰嗦,能不能我们自己在Xcode中锁定文件呢?

答案是肯定可以(不过锁定文件和Xcode没啥关系),所谓锁定,其实是修改文件的读写权限,将文件变为只读。你可以手动show in finder里,查看文件信息,修改为只读或者勾选锁定。这样的手动操作之后,在Xcode编辑的确有了解锁提示,但这样也只能算是画地为牢,对自己只读,同伴依旧可以修改。

Xcode仿Cocoapods自动化锁定文件(locked file)

Xcode仿Cocoapods自动化锁定文件(locked file) 那有没有什么自动化锁定文件的方法呢?其实我们只需在工程项目中添加执行脚本即可。

Xcode仿Cocoapods自动化锁定文件(locked file) 具体步骤,选择项目target,单击Build Phases,左上角加好,新建运行脚本,New Run Script Phase选项,然后在脚本填写如下:

# Type a script or drag a script file from your workspace to insert its path.
# A为父文件夹,B为子文件夹,C.file、D.file为目标文件
cd ${SRCROOT}/A
pushd B
  echo "A/B目录检索配置文件"
  for f in * ; do     
    # 遍历文件
    if [ "$f" == "C.file" ] || [ "$f" == "D.file" ]; then
      echo ":heart:: 锁定 $f 文件:closed_lock_with_key:"
      chmod -R -w "$f" # 删除文件的写权限
    fi
  done
popd
#@author 仁伯安

书写完成后,编译项目,即可自动化锁定文件。

结语

战战兢兢,如履薄冰,望再接再厉, 仁伯安的GitHub ,仁伯安主页,如果觉得有帮助,请不要吝啬点赞, O(∩_∩)O谢谢 ……

本文已在版权印备案,如需转载请在版权印获取授权。

获取版权

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Text Processing in Python

Text Processing in Python

David Mertz / Addison-Wesley Professional / 2003-6-12 / USD 54.99

Text Processing in Python describes techniques for manipulation of text using the Python programming language. At the broadest level, text processing is simply taking textual information and doing som......一起来看看 《Text Processing in Python》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

SHA 加密
SHA 加密

SHA 加密工具