== Tutorial - Sharing a Change with another Person == ''(This page is part of the [[Tutorial]] series. Previous part is TutorialShareChange, next part is TutorialMerge)'' In TutorialShareChange, we learned how to propagate a [[ChangeSet|changeset]] from one [[Repository|repository]] to another. There are other ways of sharing changes between repositories and people, one of the most common is through email. After we have committed a change, we can export it to a file, and email the file as an attachment to someone else. To export a change, we use the `export` command. We must provide a [[Tag|tag]], [[RevisionNumber|revision number]] or [[ChangeSetID|changeset ID]] to tell Mercurial what to export. In our case, we want to export the [[Tip|tip]]. Provided we're still in the `my-hello-share` directory, let's do just that. {{{ $ hg export tip # HG changeset patch # User mpm@selenic.com # Date 1209943246 -7200 # Node ID 86794f718fb1ea9e633f7c052757663b8ce90e30 # Parent 82e55d328c8ca4ee16520036c0aaace03a5beb65 Express great joy at existence of Mercurial diff -r 82e55d328c8c -r 86794f718fb1 hello.c --- a/hello.c Fri Aug 26 01:21:28 2005 -0700 +++ b/hello.c Mon May 05 01:20:46 2008 +0200 @@ -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; } }}} By default, `export` just displays the patch, so usually we redirect the output to a file (or use option -o). This file is a [[PatchFile|patch file]] in [[UnifiedDiff|unified diff]] format, with some extra information that tells Mercurial how to [[Import|import]] it. When the recipient receives our email, they will save the attachment and use the `import` command to import the changeset into their repository. To learn how to [[Merge|merge]] changes from diverged repositories, continue to TutorialMerge. ---- CategoryTutorial