Git的稀疏检出功能
Git Sparse checkout检出功能
1. sparse checkout的应用步聚
如图,是我最近托管的一个项目:
这个名为“mybatis_vincent_study”的repository中,有mybatis01和mybatis02两个单独的项目,现在我仅仅想clone下来repository中的mybatis01,我想利用“sparse checkout”方法来做,在stackoverflow中搜索到了一个操作办法,链接:https://stackoverflow.com/questions/600079/how-do-i-clone-a-subdirectory-only-of-a-git-repository,如图(这是在linux中的操作,经过测试windows同样适用):
按照其中的配置,我做了如下操作,如图:
其中一共5个步骤,分别进行分析:
(1)在指定的文件夹下,创建一个空的repository。
(2)获取远程仓库中的所有对象,但不Check out它们到本地,同时将远程Git Server URL加入到Git Config文件中,这个过程会耗时多一点,如果项目比较大。
(3)在Config中允许使用Sparse Checkout模式。
(4)定义要实际检出的文件/文件夹。这是通过在列表中借助“.git/info/sparse-checkout”将他们列出。
(5)见证奇迹的时刻,从远程库中拉取你要检出的项目。
mkdir <repo>
cd <repo>
git init
git remote add -f origin <url>
git config core.sparseCheckout trueecho "some/dir" >> .git/info/sparse-checkout
echo "anthor/sub/dir" >> .git/info/sparse-checkout
echo "OrangePiH5_kernel/drivers/media/platform/sunxi-vin" >> .git/info/sparse-checkoutgit pull origin master
刷新我的本地仓库,如图:
验证成功!
2. sparse checkout的应用场景
个人或者公司通过git托管项目,有时候项目很多,但是都不大,单独为每个项目创建一个repository又不值得,这个时候,可以把相似功能的项目抽到一个repository当中,这个时候,可以通过sparse checkout来实现我们所要的功能。
3. 缺点
暂时Google上没有搜到使用sparse checkout的缺点,我个人猜测即使出问题,会出在数据同步、一致性上,这一点还有待观察。
4. 补充
由于图书管理系统是前后端分离的,前端代码和原型图可以捆绑在一起,放到一个repository当中,后端代码单独托管到一个repository当中,也是一个非常好的解决办法,今天遇到的问题,其实就是repository中项目粒度的划分问题,多几次这样的实践,以后经验就更丰富了。
Git的稀疏检出功能相关推荐
- Git检出指定的目录-稀疏检出
出于费用和潮流考虑,转换代码控管工具,从Perforce转到Git.权限根据部门进行设定,根据部门设定访问项目库的权限.现状是: 1.同一个部门有不同的项目 2.同一个项目有不同的独立子项目.举个例子 ...
- 【IDEA】从Git丶Gitlab检出Maven项目到本地
一丶打开idea选择git,默认没有一个项目的情况 二丶填写地址点击Clone 如遇到点击Clone没反应或报错 Cannot run program "git.exe": Cre ...
- Git检出远程库的分支等相关操作
来到公司,询问同事后发现系统已经上传到Git远程仓库: 我这里先把远程仓库clone下来: $ git clone http://git.eas****tect.git 发现目录下只有一个READY. ...
- git checkout远程分支_Git检出远程分支
如果贡献者有自己的 Git 仓库,并将修改推送到此仓库中,那么当你拿到仓库的访问地址和对应分支的名称后,就可以加为远程分支,然后在本地进行合并. 比如,Jessica 发来一封邮件,说在她代码库中的 ...
- Eclipse中git检出、更新、提交、合并分支、以及解决冲突
一..检出git代码 在eclipse中空白区域右键 Import 检出项目:选择git方式检出 选择用git urI 链接的方式检出项目并点击继续 在这里填写你的git项目地址.账号密码 二.更新 ...
- Git 重置reset,检出checkout和回滚revert(reverse)有什么区别?
checkout主要用来用暂存区的内容覆盖工作区,达到撤销工作区修改.另一个是用来切换和创建分支. 参考文章:Git检出(checkout) revert(reverse)回滚(反做):撤销某个com ...
- Git初学札记(九)————EGit检出远程分支
引言 现在有这样一个使用场景:团队中的其他开发者提交了一个新的特性分支(如feature_1),要求我们一同开发,并将自己修改的代码也全部提交到这个分支上去.那么如何将这个分支检出,并将本地检出的分支 ...
- 【Jenkins】解决检出git仓库时报错Caused by: java.io.IOException: Cannot run program “git“
Jenkins中配置从一个win7的slave节点检出git仓库时报如下错误: git init E:\jenkins\workspace\Git-backup # timeout=10 ERROR: ...
- Git 检出、查看分支、切换分支、新建分支等简单命令
Git 检出.查看分支.切换分支.新建分支等简单命令 首先需要安装 Git 并且配置 Git 环境变量 在需要检出工程的目录鼠标右键打开命令窗口 首先拿到 Git 仓库 SSH 地址或者 https ...
最新文章
- Win8.1下VM与Hyper-v冲突解决方法
- LODOP提示、报错、现象,简短问答
- Android开发--图形图像与动画(四)--AnimationListener简介
- 明天是我的生日,写给24岁的自己
- 优雅地在Mac+Valet环境下本地部署phphub
- Java 配置maven及阿里云镜像
- html文档基本结构由哪三对,第3章 网页制作及HTML语言基本结构简介.ppt
- php安装redis扩展模块,[教程]为PHP安装phpRedis扩展模块
- python垃圾分类准确率计算公式_准确率(Accuracy), 精确率(Precision), 召回率(Recall)和F1-Measure...
- 动态组合sql语句详解
- r语言clind函数_19 函数进阶 | R语言教程
- 使用VBA通过Excel生产Word报告
- 氨基酸在php的溶液中,氨基酸等电点的计算和应用.ppt
- Qos介绍及功能->分类标记->流量管理(令牌桶)->拥塞管理与拥塞避免
- 云服务器的系统镜像怎么选,买云服务器镜像怎么选择
- 信度和效度经典例子_(完整版)心理学中的各种信度和效度
- Kettle基本使用(四) —— 应用的使用
- 【LaTeX】LaTeX打取整符号
- linux 刷流量ip,程序员同事问shell脚本刷流量,不讨巧帮他填了一个巨坑
- 楼层标高怎么引上去_高层建筑施工标高传递的简易方法