iOS摸鱼周报 第二期


主题列表:juejin, github, smartblue, cyanosis, channing-cyan, fancy, hydrogen, condensed-night-purple, greenwillow, v-green, vue-pro, healer-readable, mk-cute, jzman, geek-black, awesome-green

贡献主题:https://github.com/xitu/juejin-markdown-themes

theme: juejin

highlight:

iOS摸鱼周报,主要分享大家开发过程遇到的经验教训及学习内容。成立的目的一个是开发知识碎片化,需要有一个地方去总结并用于回顾;另一个是为了提醒自己不断学习,内卷日益严重的开发环境下,不进则退。

虽说是周报,但当前内容的贡献途径还未稳定下来,如果后续的内容不足一期,可能会拖更到下一周再发。所以希望大家可以多分享自己学到的开发小技巧和解bug遭遇。

周报仓库在这里:https://github.com/zhangferry/iOSWeeklyLearning, 可以查看README了解贡献方式。

开发Tips

开发小技巧收录。

几个有用的git命令

覆盖最近一次commit

当我们开发完一部分功能时,会提交commit,如果这时发现对应的功能少改了一些东西,我们可以单独提一个commit标记这个小改动,但更推荐的做法是将这两次改动合并为同一个,对应的命令是:

bash $ git commit --amend -m "message"

合并多个commit

如果想将已经生成的多个commit进行合并,可以使用:

bash $ git rebase -i [startpoint] [endpoint] $ git rebase -i HEAD~2 # 合并最近两次提交

endpoint默认为当前分支指向的HEAD节点。参数-i表示interactive(交互),该命令执行之后会进入一个vim的交互编辑界面,下面会有一些参数的说明:

pick:保留该commit(缩写:p) reword:保留该commit,但我需要修改该commit的注释(缩写:r) edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e) squash:将该commit和前一个commit合并(缩写:s) fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f) exec:执行shell命令(缩写:x) drop:我要丢弃该commit(缩写:d)

永久删除git内二进制

如果我们开发中忘了把某二进制文件加入.gitignore,而放入了git文件,那它就会一直存在。比如Pod目录,当引入很多库时,git文件会越来越大,即使后面再加入到.gitignore,git历史里也会存有记录,这个是无法删除的。好在git给我们提供了一个补救措施:

git filter-branch --tree-filter 'rm -f target.file'

后面的命令里可以执行删除语句。注意该命令会重写整个git历史,多人协作时更应该慎用。

git仓库迁移

git仓库的迁移,在一些git管理平台像是gitlab和github是有的,推荐使用平台提供的方法,如果没有的话我们则可以使用git语句操作:

bash git clone --bare git@host/old.git # clone原仓库的裸仓库 cd old.git git push --mirror git@host/new.git # 使用mirror参数推送至新仓库

国际化/本地化注意事项

国际化和本地化之间的区别虽然微妙,但却很重要。国际化意味着产品有适用于任何地方的“潜力”;本地化则是为了更适合于“特定”地方的使用,而另外增添的特色。用一项产品来说,国际化只需做一次,但本地化则要针对不同的区域各做一次。这两者之间是互补的,并且两者合起来才能让一个系统适用于各地。

除了大头的语言本地化,还有布局、字符、日期、数字等本地化工作࿰

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值