IOS代码重构(一)目录结构调整

来源:互联网 发布:c++界面编程 编辑:程序博客网 时间:2024/06/01 09:38

老项目经过几手之后,往往乱的不成样子,不整理实在是看着不清爽,开发维护也很困难。

再次有几个建议:

1 一个项目应该遵从一个代码架构。不能来个新人,或做个新功能就加一个新的开发架构。

2 代码评审的重要性。在新人实习的三个月内,要对其详细讲解代码架构,使其理解,并对其提交的代码作评审,防止其另立门户,给后续代码维护买下隐患。如果有更好的建议,可以沟通之后,由系统架构师添加到项目中。

有没有遇到如下问题:

1 文件夹换个位置,代码无法提交SVN。

2 删除某个不用的文件或文件夹,代码无法提交SVN。

3 修改文件夹名,代码无法提交SVN。


怎样修改目录结构,才能正确提交代码?

SVN管理下的代码如果动目录结构要小心,不能直接在文件系统下删除,移动,修改文件名。

因为在本地修改了文件名后,提交时,服务器是不知道你修改了哪个文件,只知道你提交了一个新的文件名。

应该在SVN下操作。如果用CornerStone,应该在Repositories下操作。对文件夹改名,删除,文件移动。

然后再到Working Copies下更新。再到Xcode下重新组织。


常见操作引起的冲突

如开始目录结构如下

Common-

ASIHTTPRequest-

ColorManager-

Mantle-

MBProgressHUD

ThirdLib-

我想把 ASIHTTPRequest-放到 ThirdLib


我一开始的操作步骤是这样

我在Finder中把ASIHTTPRequest拖到ThirdLib

Xcode中,Common目录下删除引用,再在ThirdLib下添加ASIHTTPRequest

SVN提交,报错,删除的ASIHTTPRequest目录找不到

如果此时,再到Common下新建ASIHTTPRequest目录

SVNCommon\ASIHTTPRequest目录变为绿色的~,有冲突了,

此时提交,说被锁定,撤销也不好使。

此时解决办法是删掉本地库,重新CheckOut,重新操作。


正确的操作步骤:

Xcode中,Common目录下删除引用ASIHTTPRequest,提交SVN

  在Finder中,把ASIHTTPRequest复制到ThirdLib

CornerStone,在Repositories下删除ASIHTTPRequest

在Xcode中,ThirdLib下添加ASIHTTPRequest,提交SVN。







0 0
原创粉丝点击