Git 拉取子目录
Git 拉取子目录
code:
step 1 :初始化空库
[root@vm_test backup]# mkdir devops
[root@vm_test backup]# cd devops/
[root@vm_test devops]# git init #初始化空库
step 2 : 拉取remote的all objects信息
[root@vm_test devops]# git remote add -f origin
step 3 : #3.1 开启sparse clone, #3.2 设置需要pull的目录 devlops
[root@vm_test devops]# git config core.sparsecheckout true #开启sparse clone
[root@vm_test devops]# echo "devops/" >> .git/info/sparse-checkout #设置需要pull的目录,表示所有,!表示匹配相反的 ".git/info/sparse-checkout" 是配置文件,通过该命令将配置写入里面
step 4 : # 将origin 端,由第三步(文件 .git/info/sparse-checkout)设置的 目录下的文件 pull 到本地
[root@vm_test devops]# git pull origin master ## “origin” 对应 step2 自定义 的名称 每次执行需要完整的代码, 仅仅执行“git pull” 不行
OK 啦!
扩展
echo 输出命令 相当于print
echo "" > 输出重定向, 比如使用该命令将某个字符写入文件,会覆盖文件之前的内容
echo hello A > tmp.txt # 将字符串输出重定向,当前目录没有tmp.txt,则创建tmp.txt,并将字符串输出到tmp.txt文件中
tmp.txt内容:hello A
echo hello B > tmp.txt # 将字符串输出重定向, 当前目录存在tmp.txt,则将tmp.txt内容替换成输出的字符串
tmp.txt内容:hello B
echo "" >> 追加重定向
echo hello C >> tmp.txt
将字符串输出追加重定向,当前目录存在tmp.txt,则将tmp.txt的内容后面追加输出的字符串
tmp.txt内容:hello B hello C
浙公网安备 33010602011771号