git 相关拉去指定的目录或分支

1.指定的目录

先说一下使用场景,想从远程仓库中只拉取指定代码,不想获取整体的更新。 使用之前一定要commit一下本地代码。如果你关联了两个仓库,那么最好也把最新代码push到经常push的那个仓库里。(commit和push的操作是让你更加安全)因为Sparse Checkout这个操作真的有坑
 

1.初始化:
$ git init <project>
$ cd <project>
2.连接远端库:
$ git remote add origin https://*****.git   //  你的git仓库地址
3.启用"Sparse Checkout"功能:
$ git config core.sparsecheckout true
4.添加想要clone的目录:
$ echo "path1/" >> .git/info/sparse-checkout
$ echo "path2/" >> .git/info/sparse-checkout
注意:子目录路径不包含clone的一级文件夹名称:
例如库路径是:
https://A/B/C/example.git
我们想clone example下的D/E/F目录,则:
echo “D/E/F” >> .git/info/sparse-checkout
5.pull代码:
$ git pull origin [branch]  



前两行的操作应该是没用的,我想你在准备这个操作前,前两行你早就完成了。剩余的代码输入完后,并没有得到想要的只更新了 ”fileName"文件夹,而是把所有远程仓库的所有代码都更新了。能merge的还会自动给你merge,还会有conflict的。我一看和我想要的效果不一样。以为用 git reset --hard HEAD@{n}  //根据commit回退代码。可以改回去,结果跟我说有一个文件没有update。后来看了别的办法也没解决(有解决的欢迎评论)。最后只有重新得到commit或者push的代码了

2.指定分支

git clone -b branch git@xxxxx/xxx.git

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值