Technology Experience
Senza categoria

[Mercurial.4] Mercurial: icone dei files, cancellazione repository e plug-in per Visual Studio 2005/2008/2010

A cosa serve TortoiseHG Overlay Icon Server ?
Lavorando con Mercurial da un po’ di tempo, mi sono accorto di una cosa strana.

Riprendiamo un’immagine usata nel post precedente:

La cartella ConsoleApplicationMercurial è contrassegnata da un’icona di un tick verde, che indica il fatto che il repository è sincronizzato e non contiene files da committare e cose del genere. Se apro la solution con Visual Studio e faccio una semplice modifica al Program.cs, e magari faccio scrivere qualcosa nella Console e salva tutto, Mercurial ovviamente capisce che quel file è cambiato rispetto alla versione contenuta nel repository. Questo “capisce che quel file è cambiato” è evidente dall’icona che contraddistingue il file stesso:

mercurial_file_modified

Adesso c’è un punto esclamativo. Questa icona non cambia solo sul file, ma anche su tutte le cartelle superiori del repository, fino a raggiungere quella root del repository stesso, che nel nostro caso è X:DocumentiIgorVisual Studio 2010ProjectsConsoleApplicationMercurial.

Queste belle icone possono sparire!
Allora, se deciderete di usare Mercurial attivamente, probabilmente gestirete il tutto da Visual Studio, e quindi potrebbe non capitarvi di andare in Esplora Risorse e vedere lo stato di ogni singolo file. Ma se lo farete, sappiate che c’è un piccolo trabocchetto dietro l’angolo: queste belle icone possono sparire. Non ditemi perchè, ma TortoiseHG (e non tanto Mercurial) ha bisogno della presenza nella tray-bar di un piccolo applicativo, TortoiseHG Overlay Icon Server, che evidentemente si occupa di monitorare il sistema e di mettere le icone giuste sui files giusti. Se questo tool non è avviato, vedrete sempre un punto interrogativo.

Ora sia chiaro: quando installa TortoiseHG viene installato anche questo tool, e viene messo per giunta da qualche parte all’avvio del sistema. Se però siete pignoli come me e andate a toglierlo, potreste cadere in questo problema. Se vi interessa saperlo, l’exe è questo:

C:Program Files (x86)TortoiseHgTortoiseHgOverlayServer.exe

Tutto qua.

Cancellazione di un repository
Nei primi giorni in cui studiavo e sperimentavo Mercurial, mi capitava spesso di creare e di voler cancellare i repository. Si può fare? Assolutamente sì.

Supponiamo di aver creato un repository in X:DocumentiIgorVisual Studio 2010ProjectsConsoleApplicationMercurial, così come indicato in questa piccola mini-serie di post. Se vogliamo cancellarlo, è sufficiente:

  1. Entrare nella cartella ConsoleApplicationMercurial
  2. Cancellare la directory .hg
  3. Cancellare il file .hgignore

Ed il gioco è fatto. Ovviamente cancellare un repository non cancella i vostri sorgenti: cancella tutti i commit fatti, l’intero storico di tutte le modifiche fatte, etc. etc. Ma tutto il resto rimane: solution di Visual Studio, tutti i .cs: ma questo non c’è nemmeno bisogno di dirlo.

Installazione del plug-in per Visual Studio
Il plug-in è compatibile con Visual Studio 2005/2008/2010 ed è scaricabile dal progetto su Codeplex. L’indirizzo è il seguente: http://visualhg.codeplex.com/.

Non richiede particolari configurazioni. Dopo l’installazione basta aprire Visual Studio, andare su Tools –> Options –> SourceControl e dal plug-in selection selezionare la voce VisualHG.

Da questo momento in poi, quando aprite una solution gestita sotto Mercurial, i files verranno identificati dalle icone, come mostrato di seguito.

visualhg_solution_explorer

ed avrete un menù contestuale per le operazioni indispensabili…

visualhg_menu

ovverro Commit, Status, History, Synchronize ed Update.

Vedremo queste operazioni nei prossimi post.

Send to Kindle

Igor Damiani

La sua passione per l'informatica nasce nella prima metà degli anni '80, quando suo padre acquistò un Texas Instruments TI-99. Da allora ha continuato a seguire l'evoluzione sia hardware che software avvenuta nel corso degli anni. E' un utente, un videogiocatore ed uno sviluppatore software a tempo pieno. Igor ha lavorato e lavora anche oggi con le più moderne tecnologie Microsoft per lo sviluppo di applicazioni: .NET Framework, XAML, Universal Windows Platform, su diverse piattaforme, tra cui spiccano Windows 10 piattaforme mobile. Numerose sono le app che Igor ha creato e pubblicato sul marketplace sotto il nome VivendoByte, suo personale marchio di fabbrica. Adora mantenere i contatti attraverso Twitter e soprattutto attraverso gli eventi delle community .NET.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.