美文网首页
使用spacecommander 格式化iOS项目代码

使用spacecommander 格式化iOS项目代码

作者: YannChee | 来源:发表于2019-01-02 12:32 被阅读14次

    这个工具的地址 https://github.com/square/spacecommander

    使用方法:

    1. 下载 spacecommander

    这里可以cd 到自己指定的文件夹,使用git命令下载;

    git clone https://github.com/square/spacecommander.git

    也可以直接下载压缩包,然后解压.

    2. 安装 spacecommander 到需要格式化代码的项目中

    cd到项目根目录,执行setup-repo.sh脚本(注意脚本需要全路径),执行完后会在项目根目录多一个隐藏文件.clang-format ,这是一个替身文件

    执行setup-repo.sh脚本
    执行完脚本后,项目个目录会多出隐藏文件

    3.修改代码格式规则

    打开.clang-format替身,指向Space Commander仓库中的.clang-format原本文件,修改里面默认系列代码规则,改成自己所需要的规则
    iOS 的可以参考这个 http://clang.llvm.org/docs/ClangFormatStyleOptions.html
    例如:我的iOS项目修改了几条的设置

    # 基于LLVM格式
    BasedOnStyle:  LLVM
    # 大括号之前间断方式
    BreakBeforeBraces: Attach
    # 声明OC属性后有两行空行
    ObjCSpaceAfterProperty: true
    

    4.以上配置已经完成,现在开始使用

    这里我故意把代码格式改的很乱,来测试一下效果

    格式很乱的代码

    当执行git commit 命令后,终端会提示有格式问题

    image.png

    根据提示,执行 >"/Users/YannChee_workMac/spacecommander"/format-objc-files.sh -s ,即可格式化代码,再次commit 时就不会提示代码有格式问题了

    顺便总结一下,这几个脚本的作用:

    setup-repo.sh 初始化
    format-objc-file.sh 格式化单个暂存文件
    format-objc-files.sh 格式化所有暂存文件
    format-objc-files-in-repo.sh 格式化整个仓库

    格式后的代码

    使用过程中遇到的问题:

    有时候代码命名已经格式化成功,但是git commit 终端还是提示 代码格式有问题,这可能是这个工具的bug,需要在git commit 后面加上 --no-verify修饰下,例如

    git commit -m "test" --no-verify
    或 git commit --no-verify -m "test"

    相关文章

      网友评论

          本文标题:使用spacecommander 格式化iOS项目代码

          本文链接:https://www.haomeiwen.com/subject/lwnklqtx.html