git 按需下載倉庫某個(gè)文件夾
應(yīng)用場(chǎng)景
在 github
有一個(gè)很大的倉庫,但是自己真正使用的只有某幾個(gè)文件夾,那么如何只下載這幾個(gè)文件夾呢?
這里就要使用 git
的 sparse-checkout
功能
下面主要介紹三種情況
- 本地沒有此倉庫代碼
- 本地已有此倉庫代碼
- 禁用該功能
本地沒有此倉庫代碼
本地建立一個(gè)新的倉庫
git init my_source_project
cd my_source_project
添加遠(yuǎn)程倉庫地址
這里的遠(yuǎn)程倉庫地址即為需要下載部分代碼的倉庫地址
git remote add origin https://github.com/tyustli/threadx-l475.git
在本地倉庫里面啟用sparse-checkout
git config core.sparseCheckout true
添加需要下載的文件夾
echo "/docs" >>.git/info/sparse-checkout
echo "/stm32l475" >>.git/info/sparse-checkout
也可以用編輯器直接打開 .git/info/sparse-checkout
文件并寫入,該文件語法規(guī)則和 .gitignore
文件一樣
下載需要的代碼
git pull origin master
當(dāng)然也可以先
git branch --set-upstream-to=origin/master
然后
git checkout master
git pull
本地已有此倉庫代碼
如果本地已經(jīng)建了版本庫,要使用這個(gè)功能,可以進(jìn)入版本庫的目錄,執(zhí)行以下命令
git config core.sparsecheckout true // 使能該功能
echo "" > .git/info/sparse-checkout // 清空該文件
echo "/docs" >> .git/info/sparse-checkout // 添加需要下載的文件
echo "/inc" >> .git/info/sparse-checkout // 添加需要下載的文件
echo "/src" >> .git/info/sparse-checkout // 添加需要下載的文件
git checkout master
git pull
后續(xù)有需要下載的文件夾文章來源:http://www.zghlxwxcb.cn/news/detail-515511.html
echo "/xxx" >> .git/info/sparse-checkout
git checkout master
git pull
禁用該功能
git config core.sparsecheckout false
echo "*" > .git/info/sparse-checkout
git checkout master
git read-tree...
參考鏈接
- http://schacon.github.io/git/git-read-tree.html#_sparse_checkout
總結(jié)
本文主要介紹了 sparse-checkout
的功能,如何下載遠(yuǎn)程 git
倉庫中的部分代碼及文件夾。文章來源地址http://www.zghlxwxcb.cn/news/detail-515511.html
到了這里,關(guān)于【git】按需下載倉庫某個(gè)文件夾的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!