Sto migrando un grande repository CVS di 10 anni su Git. Sembrava ovvio dividere questo repository di più progetti in diversi Git. Ma i decisori sono abituati a CVS, quindi il loro punto di vista è influenzato dalla filosofia CVS.
Per convincerli a migrare da un repository CVS a repository Git diversi ho bisogno di dare loro alcuni argomenti.
Quando parlo con gli amici che lavorano su Git repo da anni, dicono che usare più repo Git è il modo di usare Git. Non so davvero perché (mi danno alcune idee). Sono un principiante in questo campo, quindi chiedo qui la mia domanda.
Quali sono gli argomenti per utilizzare più repository Git invece di uno singolo contenente diverse applicazioni e librerie di team diversi?
Ho già elencato:
- rami / tag influenzano l'intero file repository Git = > inquina altri progetti del team
- Limite da 4 GB Limite repo Git ma questo è sbagliato
- git annotate potrebbe essere più lento su bloat Git repo ...
-
Eamon Nerbonne ha notato la domanda correlata:
Chiusura tra progetti singoli o multipli in un repository git? - Il motivo per cui i team manager hanno finalmente accettato la divisione: il singolo repo Git (550 MB) richiedeva 13 minuti per essere clonato su Windows (un minuto su Linux) .
- Il repository CVS bloat diviso in 100 repository Git:
- ogni app morta in un repository
- ogni libreria stabilizzata in un repository (codice sorgente quasi mai modificato più)
- app / librerie correlate mantenute insieme in un repository
- spostato file di grandi dimensioni non utilizzati per la compilazione (config ...) in altri repository (a Git non piacciono i file di grandi dimensioni)
- salta altri file non pertinenti (
*.jar
,*.pcb
,*.dll
,*.so
,*.backup
...)
- Lo strumento
repo
utilizzato dal progetto Open Source Android è stato installato con successo per gestire tutti questi Git pronti contro termine:- facile installazione su Linux
- più difficile su Windows a causa di link simbolici nativi di Cygwin e NTFS requisiti