Хотите сделать разреженный выезд из git repo (github.com). Update (этот скрипт работает сейчас - трюк, чтобы добавить «/» перед pom.xml Сделан это Баш скрипт:git редкая проверка и мелкий вопрос клона с github
#!/bin/sh
export baseUrl=https://github.com/
export repoAc=spring-projects
export repo=spring-data-examples
#export baseUrl=https://github.com/
#export repoAc=tgkprog
#export repo=testGit
echo "Cd change to correct dir like ~/u/w/s/github/"
cd ~/u/w/s3/github/
if [ $? -eq 0 ]; then
echo OK
else
echo"FAIL: bad dir to cd to "
exit 0
fi
echo "Have you edited this script? Else crl -c to stop now"
echo "you are at dir:"
pwd
echo "If exists contents of $repoAc/$repo :"
ls $repoAc/$repo
echo "1/2 will delete folder $repoAc/$repo ctrl-c to cancel. Press enter to continue"
read -rsp $'Press Ctrl-c to cancel or any other key to continue \n' -n1 key
echo "2/2 will delete folder $repo ctrl-c to cancel. Press enter to continue "
read -rsp $'Press Ctrl-c to cancel or any other key to continue \n' -n1 key
mkdir $repoAc
cd $repoAc
rm -fR ./$repo
git init $repo
cd $repo
if [ $? -eq 0 ]; then
echo OK
else
echo"FAIL: bad dir to cd to "
exit 0
fi
# TODO if error stop here.
git remote add origin $baseUrl$repoAc/$repo
git config core.sparsecheckout true
echo "elasticsearch/*" >> .git/info/sparse-checkout
echo "/README.md" >> .git/info/sparse-checkout
#echo "h/" >> .git/info/sparse-checkout
#echo "s/" >> .git/info/sparse-checkout
echo "web/*" >> .git/info/sparse-checkout
echo "jpa/*" >> .git/info/sparse-checkout
echo "map/*" >> .git/info/sparse-checkout
echo "multi-store/*" >> .git/info/sparse-checkout
echo "/pom.xml" >> .git/info/sparse-checkout
#echo "!*/pom.xml" >> .git/info/sparse-checkout
#paths we do not want
echo "!no1/" >> .git/info/sparse-checkout
echo "!neo4j/" >> .git/info/sparse-checkout
echo "!cassandra/" >> .git/info/sparse-checkout
echo "!solr/" >> .git/info/sparse-checkout
git pull --depth=1 origin master
# wget https://raw.githubusercontent.com/spring-projects/spring-data-examples/master/pom.xml
echo "Done $repo"
ls -al
Если я удалить строки из эха «pom.xml» ... и до эха " Solr/*»>> .git/Информация/исключить
я подкаталоги:. Bom elasticsearch JPA карта веб
Но не родительский POM
Если добавить эхо "pom.xml" >> .git/info/spa rse-checkout
Затем он получает все (все вспомогательные каталоги). Не знаете почему?
Update 2:
Ранее пробовал:
echo "cassandra/*" >> .git/info/exclude
Значение добавления пути Я хочу, чтобы мерзавец не извлекает в файл .git/Информация/исключить, но этот файл для добавления и совершать только не для оформления заказа.
Для проверки нужно добавить в файл .git/информации/разреженную проверку следующим образом:
! Кассандра/
Код строка:
echo "!cassandra/" >>.git/info/sparse-checkout
делает это ,
заполнения '.git/info/exclude' не имеет смысла в вашем случае; он учитывается при фиксации/добавлении, но не при выписке – max630
'@echo off' предназначен для пакетных файлов - он не нужен или не полезен для сценариев оболочки. –
@ max630 да ваше право. необходимо использовать удар (!) перед тем, как идти в .git/info/sparse-checkout, чтобы отметить его как не включенный. – tgkprog