Noto che nessuno sta dando il "piccolo" tutorial per GIT , quindi proverò a coprirlo. GIT è più veloce e superiore a SVN, ma forse è più facile per te ottenere un account SVN su un server della tua università, poiché SVN è ben consolidato. Anche i tuoi collaboratori potrebbero sapere come usarlo.
Anche se collabori usando SVN, potresti voler usare GIT per il tuo versioning locale (lo faccio!).
Primo avvertimento : GIT è molto potente e per l'utilizzo di base è solo leggermente più difficile da usare rispetto a SVN (ad esempio, un'opzione da aggiungere nella riga di comando; due passaggi impegnano per il repository centrale).
Secondo avvertimento : GIT ha la filosofia di considerare atomica una serie di modifiche (aΔcome lo chiamano) anche se il set comprende più file. Anche in GIT hai la nozione di repository locale e repository centrale .
BUONO : puoi lavorare offline.
MALE : sono necessari due passaggi per il commit su un server centrale .
Comandi di base supponendo che tu abbia già un repository
- Clona un repository:
git clone <url>
- Aggiorna il tuo repository locale:
git pull <repo>
o solo git pull
se hai clonato come sopra.
- Il comando pull fa davvero entrambi
git fetch
e git merge
. Il primo "recupera" roba dal server centrale e il secondo applica un'unione dei tuoi file con quelli del server.
L'unione è automatica finché non ci sono modifiche simultanee sulle stesse parti di alcuni file. Se l'unione fallisce, la directory di lavoro rimane in uno "stato di unione", il che significa che è necessario correggere i conflitti e quindi eseguire il commit della copia unita. Se hai ancora conflitti non gestiti nei tuoi file, il commit fallirebbe di nuovo, senza garbage commit.
- Aggiungere un nuovo file di essere impegnati:
git add <file name>
.
- Apporta modifiche al tuo repository locale :
git commit -am "<textmessages>"
ogit commit -a
se desideri modificare i messaggi di commit.
- Inserire le modifiche nel repository locale nel repository centrale .
Nota che per inviare le modifiche al tuo repository centrale devi prima impegnarti nel tuo repository locale e devi spingere tutti i commit (anche più di uno) nel tuo repository centrale .
Creare un repository locale dell'utente
- Creazione di un repository
git init
in qualsiasi cartella che ti piace.
- Fatto!
Crea un repository condiviso (anche privato se paghi in contanti) con una bella interfaccia grafica.
Crea tanti repository privati / pubblici con diversi gruppi di utenti ma senza interfaccia grafica.
- Richiedi un account SSH senza password su una macchina accessibile.
- Non preoccuparti poiché l'autenticazione viene eseguita dalle chiavi SSH.
- Installa Gitosis secondo questo tutorial .
- Ora puoi amministrare il tuo server git modificando un singolo file e trasferendolo nel repository!
Git non ha bisogno di un server centrale : qualsiasi cartella nel tuo computer può essere utilizzata come repository, quindi puoi giocare con git e rendere offline i tuoi test. È possibile inizializzare un repository e simulare tre collaboratori in altre tre cartelle senza inviare un bit in rete. Questo perché qualsiasi copia clonata del repository è un repository completo in cui è possibile eseguire il commit. Questo è utile se vuoi lavorare in un volo tra Stati Uniti, Cina o Europa.