Sovversione; check-out solo tronco per più progetti
-
02-10-2019 - |
Domanda
ho una struttura di directory in svn in questo modo:
- Progetto A
- rami
- tronco
- Progetto B
- rami
- tronco
...
Voglio cassa solo le directory tronco per tutti questi progetti. Ci sono circa 400 di questo tipo di progetti, in modo check-out tronco manualmente non sarà un'opzione.
La mia prima risposta sarebbe quella di utilizzare la lista svn, ma il mio guscio capacità di scripting non sono alla pari e sono sicuro come creare le directory appropriate e aggiungere 'tronco' e fare un checkout.
Chiunque voglia mi punto nella giusta direzione?
TL: DR;
- Elenco svn produce qualcosa come 'project_a'.
- Voglio cassa 'project_a / trunk' in 'project_a'.
Soluzione
È possibile memorizzare l'elenco dei progetti in un file (projects_list), quindi eseguire questo script:
for p in $(cat projects_list); do
mkdir $p
svn co "$url/$p/trunk" $p
done
Altri suggerimenti
Ecco un modo per farlo utilizzando il flag profondità:
echo Getting Projects the folder structure
svn co http://www.therepo.com/projectsParentFolder --depth immediates
echo Getting the structure for each Project
for /f %%f in ('dir /b .\projectsParentFolder') do svn co http://www.therepo.com/projectsParentFolder/%%f .\projectsParentFolder\%%f --depth immediates
echo Getting the trunk for each Project
for /f %%f in ('dir /b .\projectsParentFolder') do svn co http://www.therepo.com/projectsParentFolder/%%f/trunk .\projectsParentFolder\%%f\trunk --depth infinity
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow