git更新部分代码的指令

迷糊 2012-06-23 09:57:54
git repo地址ssh://url/project.git
我在本地/home/pro/ 下面git clone ssh://url/project.git,建立了这个本地拷贝版本
但是我不想每次git pull更新全部的代码。如果只想更新某个文件夹下的代码变动,需要怎么操作?加什么参数?
譬如project 下有个文件夹的路径为 ./src/mode/ ,我现在只想更新mode文件夹下的最新代码,请问怎么写?多谢!

PS1: cd 进入./src/mode 文件夹,然后git pull,不行的,试过了。
PS2: git pull --help 看了半天也找不到我想要的答案
PS3: 刚想CSDN内部搜索,看是否有人解答过这个问题,一直都是500错误
...全文
3473 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xunxun 2012-06-23
  • 打赏
  • 举报
回复
据我所知没有办法

git是分布式的,每个人必须有完整的版本库

只能通过submodule把别人的来挂靠在自己的版本库下
xxjnetwork 2012-06-23
  • 打赏
  • 举报
回复
我现在能想到的办法就是你自己建立一个分支(git branch命令),在你分支上面只修改那个目录下的代码(或者把其他分支这个目录下的修改打一个patch弄过来),然后每次合并提交这个分支就可以了。
关于打patch:你进入只想修改的这个目录后,diff -arN old_file new file > xx.patch,这个patch拷贝到分支目录后用git apply打上。可能有些命令有错误,你自己试试
xunxun 2012-06-23
  • 打赏
  • 举报
回复
我也遇到这样的事情

除了网络的原因,其他原因不清楚,我有时候莫名其妙的就中断了,其他人速度就很快

看看git的版本是否相同呢
迷糊 2012-06-23
  • 打赏
  • 举报
回复
多谢 @xunxun1982
但是有个奇怪的问题,我们现在开发的项目代码有2个GB,每次我pull的时候都需要半个多小时。哪怕只pull一个文件,也需要先fetch所有的代码,然后再merge。真是想S的心都有了。
但是,我有个同事,在他机器上git pull的速度就非常快。
你还能知道是什么原因吗?
现在知道的唯一区别就是:.git/config 中,filemode 的值不同 。但是始终觉得不会差别这么大吧。
多谢~

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧