Tutorial - condividere le modifiche con un'altra persona
In TutorialCondividereModifiche abbiamo imparato come spostare un changeset da un repository ad un altro. Ci sono altri modi di condividere le modifiche tra repository e persone, uno è l'uso di e-mail.
Dopo che abbiamo effettuato una modifica, possiamo esportarla in un file, e spedire il file via mail come allegato a qualcun altro.
Per esportare una modifica usiamo il comando export. Abbiamo bisogno di tag, numero di revisione o changeset ID per dire a Mercurial cosa esportare. Nel nostro caso vogliamo esportare il tip. Quindi considerando di essere nella cartella my-hello-share facciamo così:
$ hg export tip # HG changeset patch # User mpm@selenic.com # Node ID a58809af174d89a3afbbbb48008d34deb30d8574 # Parent 82e55d328c8ca4ee16520036c0aaace03a5beb65 Express great joy at existence of Mercurial diff -r 82e55d328c8c -r a58809af174d hello.c --- a/hello.c Fri Aug 26 08:21:28 2005 +++ b/hello.c Fri Aug 26 08:26:28 2005 @@ -12,5 +12,6 @@ int main(int argc, char **argv) { printf("hello, world!\n"); + printf("sure am glad I'm using Mercurial!\n"); return 0; }
Come impostazione di default export mostra solo la patch, così di solito dobbiamo ridirigere l'output del file. Questo file è un file patch in formato unified diff, con alcune informazioni in più che dicono a Mercurial come importarlo.
Chi riceve il nostro e-mail salverà l'allegato e userà il comando import per importare, appunto, il changeset nel repository.
Mettiamoci nei panni del ricevente e impariamo come effettuare il merge di una modifica in TutorialEffettuareMerge.