Android Source 瘦身

donut source size

donut source size

半年前,第一次执行 repo sync,Android Source 的大小是2.3G左右,时至今日 Android 的体积庞大了不少,对 donut 分支统计如下:

xuhj@eniac:~$ du -sh donut/
3.0G donut/

倘若把代码加入到Eclipse中,一不小心 auto build 体积会进一步膨胀,这样给移动代码带来很大不便,–我倒是不可惜硬盘空间,我是可惜时间耗在了数据传输上。

于是,就想办法删除掉无关代码的冗余文件,据我推测,根目录下的 .repo 文件夹是保存版本信息的地方。因为新环境下不需要同步代码,于是这一部分就可以不用拷贝了。

执行如下命令,拷贝 donut 的源码,–.repo文件夹除外。

xuhj@eniac:~/donut$ ls | grep -v .repo | xargs -i cp -rp {} /mnt/share/donut/

上述命令还可以进一步缩短,因为 ls 本身是不打印隐藏文件的,所以 grep -v .repo 就显得多余了,只不过是因为我设置了系统用 ls -a 代替 ls,所以对我而言是要加上的。

拷贝完之后,不经意发现 .git 文件夹也被拷贝进了新路径下,于是,执行以下命令,剔除 .git 文件夹

xuhj@eniac:/mnt/share/donut$ find . -name .git | xargs -i rm -rv {}

重新统计donut分支:

xuhj@eniac:~$ du -sh /mnt/share/donut/
239M /mnt/share/donut/

Leave a comment

Your comment