项目开发中不免遇到修改工程文件名的操做,修改过程当中总会各类遗漏,特分享在此。
由于在开发SDK的前期没有肯定好工程名,后期发 beta 版本的时候须要总体修改工程名,因此总结下经验:ios
-
首先:先在git建一个分支便于丢弃和回滚,每个步骤作一次保存操做。git
-
第一步: 修改工程名xcode
- 左侧"Project navigator"点击你想要修改的工程.
- 右侧"File inspector",找到"Identity and Type",名字栏修改为 你想要的新名字.
- 在弹出的下拉菜单中选择"Rename".
-
第二步: 修改模块名ide
- 在顶端栏,靠近"Stop"按钮,点击展开 Scheme 列表, 选择 "Manage schemes"
- 单击Scheme名进行修改
-
第三步: 修改文件夹名单元测试
- 关闭 Xcode.
- 打开 terminal, cd 到项目目录,执行
git mv oldname newname
, 这样能识别是移动,而不会从新删除和新建.
- 从新打开 Xcode, 会收到错误警告: "The folder OLD does not exist"
- 在左侧项目栏,点击最顶层文件夹名
- 在右侧 "Identity and type" 下你会看到 "Name"入口,修改为新的名字
- 再下面会看到 "Location", 选择为新的文件夹名.
-
第四步: 修改 plist测试
- 左侧项目栏,点击项目,中间主面板选择 "Build Settings"
- 搜索 "plist"
- 在 "Packaging" 下,你将会看到
Info.plist
, 和 Product bundle identifier
- 修改
Info.plist
名
- 一样修改
Product bundle identifier
名
-
第五步: 为tests重复第三步(若是你有单元测试和UITest的话)ui
-
第六步: 为 core data 重复第三步(若是你有的话)code
-
补充:(若是须要的话)索引
- 修改 Targets: 在中间主面板左侧栏会看到TARGETS,若是没有被修改的话主动点击修改
- 修改文件名: 单击选择须要修改的文件,.m中选择类名,单击右键, "Refactor", "Rename", 修改为想要的新名字,若是注释的类名没有自动自改,则点击便可,回车或 "Rename"按钮
- 若是是OC和Swift混编,修改后 header-bridger 文件索引会出问题,若是引用找不到,定是桥接文件所由于问题。
以上,按步骤包含项目全部须要修改的元素,每次修改后编译经过保存便于回滚和丢弃。若是有更好的方法欢迎你们提出。开发
Reference:
1.How do I completely rename an Xcode project (i.e. inclusive of folders)? 2.(iOS) Rename your Xcode Project 3.iOS changing target name