Git sparse checkout do prostego wdrożenia w sieci
Mam taką strukturę katalogów:
../dir1/dev/project1/...
/project2/...
/project3/...
/production/
Mam dev (i wszystkie jego podkatalogi) sprawdzone w git (i github). Wszystko działa dobrze.
Chciałbym użyć github do wdrożenia tylko projektu2 poprzez wyewidencjonowanie (lub wyciągnięcie, lub cokolwiek) do mojego katalogu produkcyjnego. (A konkretnie chcę sprawdzić według tagów)../dir1/production/project2
Nie jestem ekspertem od gitów, ale przeczytałem kilka artykułów w Internecie i wydaje mi się, że to, czego szukam, to „rzadkie kasowanie”. Próbowałem różnych kombinacji instrukcjitutaj itutaj itutaj.
Zasadniczo tak:
mkdir <repo> && cd <repo>
git init
git remote add –f <name> <url>
git config core.sparsecheckout true
echo /project2/ >> .git/info/sparse-checkout
Kiedy robięgit pull <remote> TAGNAME
dostajęfatal: The remote end hung up unexpectedly
.
Kiedy robięgit checkout TAGNAME
dostajęerror: Sparse checkout leaves no entry on working directory
.
Co ja robię źle?