git单独针对一个仓库实现子目录提交修改
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,项目组有个需求:目前我们线上代码都是git 仓库托管的,开发和前端都需要对仓库中的js目录中的文件进行修改,为了避免冲突,想到了把仓库中的子目录分离开来,让前端工程师可以提交到git 仓库。以前是通过
千家信息网最后更新 2025年02月19日git单独针对一个仓库实现子目录提交修改
项目组有个需求:目前我们线上代码都是git 仓库托管的,开发和前端都需要对仓库中的js目录中的文件进行修改,为了避免冲突,想到了把仓库中的子目录分离开来,让前端工程师可以提交到git 仓库。以前是通过ftp进行更新,会有很多问题。更改了这种方式会提高工作效率
git和svn对比:
svn是基于文件方式的集中存储,Git却是基于元数据方式散布式存储文件信息的,它会在每次Clone的时候将所有信息都取回到本地,即相当于在你的机器上生成1个克隆版的版本库,既然本地有了完全的版本库,肯定就有所有权限了,所以也就没办法针对子目录的进行权限控制了。
实现:
git从1.7.0开始支持sparse clone,sparse clone也只是1个变通的方法:先拿到全部repository的object等元数据信息,然后在本地加1个叫.git/info/sparse-checkout的文件(即黑名单、白名单,支持正则,参见下文具体操作命令)来控制pull那些目录和文件(类似.gitignore文件,都是本地的概念),变通的实现git只clone仓库中指定子目录和文件
步骤:
1.在本地创建一个目录,用于提交代码
mkdir test
2.初始化仓库
git init
3.拉取远程仓库的objects信息
git remote add -f origin git@code.aliyun.com:test/test.git
4.开启sparse clone
git config core.sparsecheckout tr
ue
5.设置需要pull的目录 *表示所有
echo "develop" >>.git/info/sparse-checkoutecho "web/assets/*" >>.git/info/sparse-checkout
6.拉取远程仓库
git pull origin master
7.查看
ll assets/total 4drwxr-xr-x 1 Administrator 197121 0 七月 10 10:51 css/drwxr-xr-x 1 Administrator 197121 0 七月 10 10:51 img/drwxr-xr-x 1 Administrator 197121 0 七月 10 10:51 js/drwxr-xr-x 1 Administrator 197121 0 七月 10 10:51 lib/
8.本地测试提交
touch test.txtecho "this is a test"git add .git commit -m "test"git push origin masterCounting objects: 4, done.Delta compression using up to 4 threads.Compressing objects: 100% (3/3), done.Writing objects: 100% (4/4), 331 bytes | 0 bytes/s, done.Total 4 (delta 2), reused 0 (delta 0)To code.aliyun.com:test8/test.git037b8ec..317b2a2 master -> master
参考文档:http://www.wfuyu.com/technology/25144.html
仓库
文件
信息
目录
子目
子目录
方式
前端
数据
版本
变通
存储
控制
支持
上代
中指
代码
办法
只是
名单
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
用友用什么软件开发
网游单机 数据库
网络技术检查工具
天下盐商网络技术有限公司
淮安进口刀片服务器厂家
为什么要制定网络安全法
网络安全本质是保护人民群众
软件开发专业有什么前景
计算机网络技术学院奖
枣庄安卓软件开发企业
tftp服务器配置
网贷算网络安全问题吗
受人称赞的语音会议软件开发
如何选择数据库参数
邀玩网络技术有限公司电话
未来教育网络技术2018
中职网络安全攻防比赛
软件开发人员转正述职
未来教育网络技术教程
梦幻手游 服务器时间
海康服务器硬盘蓝色灯亮
高中网络安全手抄报大全
苏州net软件开发靠谱吗
网络安全本质是保护人民群众
centos的数据库
什么专业是学习软件开发的
云南网络安全知识大全
数据库应用基础涂振宇
数据库大批量的添加数据
镇江销售管理软件开发平台