给你的git仓库瘦身】的更多相关文章

很久没有写博客了,最近遇到了一个git问题,比较典型,记录下来与大家分享. 我们使用git版本控制的时候享受了很多便利,不管是代码合并,分支提供给我们的并发,但我们也往往忽略了每次提交之后在我们本地项目根目录下.git文件夹里面的存储变化.我遇到的git"臃肿"问题就是因为在提交的时候把较大文本加入版本控制,在其他人拉取更新反推远程分支的时候,每一次都会加剧.git下面的objects的文件夹大小,最终的结果就是再也无法顺利从远程pull,也无法顺利clone该项目. 关于.git的产…
Git仓库删除大文件 背景 当用Git久了,难免会手误或临时添加一些大文件到仓库中,即使以后添加进了.gitignore,甚至做了git rm,但是Git为了保证版本可回退,history pack里面依然会存储这些对象,这个时候我们就要为Git仓库进行瘦身. 或者不是大文件的情况,有时我们需要删除掉一些敏感信息文件,比如password.txt,即使回退也无法找到敏感文件,要实现这个要求,也要对history pack进行清理. 清理主要做如下一些事情: 寻找想要彻底清理的文件路径 查询这个文…
很多时候,我们会遇到在一个git仓库下包含了很多小项目,但是随着有些项目的需求逐渐增大或则市场需求,我们需要将其抽离出来,作为一个单独的项目进行维护并开发. 但是,如果直接拷贝文件粘贴到新建的git repository中,会丢掉原有的commit,所以我们不能这么粗暴地做. 怎么办呢?下面会根据一个例子,详细说明. 假如我们在demos仓库中,包含了如下小项目,其中,我们想将Comet这个目录下的文件单独抽出来,作为一个单独的项目维护开发,如下: 首先,我们通过git clone 将demos…
alpine制作jdk镜像 alpine Linux简介 1.Alpine Linux是一个轻型Linux发行版,它不同于通常的Linux发行版,Alpine采用了musl libc 和 BusyBox以减少系统的体积和运行时的资源消耗. 2.Alpine Linux提供了自己的包管理工具:apk(注意:ubuntu中是apt-get),我们可以通过https://pkgs.alpinelinux.org/packages 查询包信息 3.Alpine Docker镜像继承了Alpine Lin…
******** ******** 第一部分: 瘦身内容介绍 ******** ******** 项目新版本的迭代接近尾声, 因为历史累积问题, 导致有很多无效的资源让已经臃肿的APK变得更肿, 因此公司决定做一次Android APK的资源瘦身. 这次瘦身使用的是Lint审查工具,  用Android Studio的Generate Signed APK打包, 瘦身前APK为17.3M, 瘦身后为15.7M.  瘦身结果为APK大小减少了1.6M(9.x%) 1. 完全相同的一张图片, 在项目…
刚使用Win7 系统不久,前段时间在清理系统垃圾时发现,win7系统的windows文件夹下的winsxs 文件夹占用空间很大,想清理之,却提示无权限无法清理.随即在网上查了个到底,原来winsxs是一个超大的文件仓库,系统所在分区差点儿全部的系统文件都在那里至少有一个备份.并且随着系统的使用,winsxs的所占的空间还将不断的积累壮大,终于将吞噬整个系统分区的磁盘空间.以下附上搜索来的一篇winsxs的具体描写叙述文摘.winsxs的瘦身方法和一篇关于 DLL Hell问题 的描写叙述文摘和大…
在我们提交安装包到App Store的时候,如果安装包过大,有可能会收到类似如下内容的一封邮件: 收到这封邮件的时候,意味着安装包在App Store上下载的时候,有的设备下载的安装包大小会超过100M.对于超过100M的安装包,只能在WIFI环境下下载,不能直接通过4G网络进行下载. 在这里,我们提交App Store的安装包大小为67.6MB,在App Store上显示的下载大小和实际下载下来的大小,我们通过下表做一个对比: iPhone型号 系统 AppStore 显示大小 下载到设备大小…
VS2010工程结构: 我们以在VS2010上利用MFC创建的单文档应用程序HelloWorld的文件结构为例,简述VS2010应用程序工程中文件的组成结构. 1.解决方案相关文件 解决方案相关文件包括解决方案文件夹下的.sdf文件..sln文件..suo文件和ipch文件夹. .sdf文件和ipch目录等浏览数据库与智能提示.错误提示.代码恢复和团队本地仓库等相关,支持智能浏览感知编辑.显示类视图等,一般占用空间比较大,几十兆甚至上百兆,不方便工程项目的打包备份.如果你觉得不需要则可以设置不生…
前言 本节我们来讲讲在我们在构建镜像过程中不出问题,同时使得最后所构建的镜像文件大小尽可能最小,温馨提示:文中大图均可点击放大查看详细信息. 缓存(cache) Docker的优势之一在于提供了缓存,加速镜像迭代构建,我们知道构建镜像使用docker build命令,也就是说通过docker build的缓存机制实现了镜像的复用,不仅节省镜像存储空间,也为镜像构建节省了大量时间. Docker会由上至下逐步执行Dockerfile中的指令,按顺序执行每个指令,在检查每条指令时,Docker在其缓…
1.介绍 本教程中,我们将研究如何使用spring-boot-thin-launcher项目来将Spring Boot项目瘦身. Spring Boot出了名的把所有依赖打包成单个可执行的Fat JAR,同时也被广泛应用于微服务.有时候和Fat JAR不一致的是,反复包括相同的依赖会成为一种资源浪费. 2.先决条件 首先,我们当然需要一个Spring Boot项目.在本文中,我们将研究Maven构建和Gradle构建的最常见配置. 这里是不可能覆盖所有构建系统和相应的配置,但是希望我们能够有常用…