[Mercurial.3] Creazione di un repository Mercurial per gestire una solution Visual Studio 2010
Nel post precedente abbiamo dato solo una leggera infarinatura. Oggi facciamo un po’ più sul serio. Vediamo come creare un progetto Visual Studio 2010 e vediamo come versionare i sorgenti con Mercurial.
Al principio non dobbiamo fare nulla di particolare: apriamo VS2010 e creiamo una Console Application: lo facciamo solo per semplicità , ovviamente il tutto continua a valere con progetti WPF, Silverlight e ASP.Net. Creiamolo come al solito nella directory predefinita di Visual Studio, ottenendo un path ad esempio simile a questo:
X:DocumentiIgorVisual Studio 2010ProjectsConsoleApplicationMercurial
La cartella apparirà come tutte le altre normalissime cartelle.
A questo possiamo creare il repository, seguendo gli stessi passaggi indicati nel post precedente. Clicchiamo col destro sulla cartella ConsoleApplicationMercurial, andiamo su TortoiseHG e poi clicchiamo su Create Repository here.
Apparirà la seguente finestra:
Non toccate nulla e premete Create. Prima di farlo, però, date un’occhiata alla casella Add special files (.hgignore): questo è un file particolare, perchè può contenere un elenco di “filtri†per evitare di versionare determinati files, basandosi su estensioni/cartelle, etc. etc. E’ utile, come è facile intuire, per evitare di versionare exe, dll, files binari e così via.
Per adesso, ripeto, clicchiamo su Create e proseguiamo. A questo la cartella appare con un tick verde:
Questo perchè il repository in questo momento non contiene files modificati che richiedono il commit. E’ ovvio: il repository è ancora vuoto, per cui il passaggio seguente è quello di aggiungere i files. Clicchiamo col destro sulla cartella, andiamo su TortoiseHG e poi su Add files. Notare che siccome in questo momento stiamo lavorando su una cartella che è un repository Mercurial, il numero di voci disponibili è cresciuto a dismisura: possiamo esplorare il repository, possiamo aggiungere/rimuovere files, possiamo inviare ad un webserver il contenuto del repository, etc. etc.
Rimaniamo sul semplice, aggiungendo i files. La finestra di dialogo per questo task è la seguente:
Notare che ho spento le checkbox degli ultimi tre files, che sono files eseguibili o comunque files che non mi interessa versionare. Clicchiamo su Add ed il gioco è fatto.
A questo punto possiamo effettuare il commit vero e proprio. Clicchiamo col destro sulla cartella ed andiamo su HG Commit. La finestra di dialogo è la seguente:
Questo tool è più complesso di quello che sembra: c’è una casella di testo per inserire una descrizione relativa al nostro commit (“Primo commitâ€); sul lato sinistro c’è l’elenco dei files, mentre sul lato destro appare il contenuto del file correntemente selezionato sul lato sinistro. Se il file ha una history di qualche tipo (lo vedremo in seguito), sul lato destro vediamo le righe aggiunte/cancellate/modificate nel changeset corrente.
Inseriamo una descrizione e poi clicchiamo sul pulsante Commit nella toolbar.
A questo punto, possiamo tranquillamente lavorare con Visual Studio: aggiungiamo classi, scriviamo codice, aggiungiamo progetti e riferimenti. Ogni file che verrà aggiunto all’interno della cartella X:DocumentiIgorVisual Studio 2010ProjectsConsoleApplicationMercurial viene automaticamente preso in considerazione per l’inserimento nel repository. Ogni volta che fate il commit, l’elenco dei files sulla sinistra si aggiornerà : la colonna status (in breve ‘st’) vi dirà ‘A’ per quelli ‘added’ o ‘M’ per i files ‘modified’.
Questo se non vogliamo lavorare con il plug-in di Visual Studio, cosa che invece faremo dal prossimo post. La cosa è molto semplice: dentro il Solution Explorer ogni file verrà indicato con un’icona per indicare se è sincronizzato rispetto a quello nel repository, oppure se è stato modificato e così via. Possiamo committare, possiamo vedere lo stato corrente del repository, e un po’ di altre cose interessanti.
Alla prossima!