Tutorial - Обмен изменениями с другими пользователями

(Это 6-я из 9-ти частейTutorial. Предыдущая - обмен изменениями с другим репозиторием, следующая обработка множества независимых изменений файла)

В главе "обмен изменениями с другим репозиторием" мы разобрались с извлечением changeset'ов из одного репозитория в другой. Существуют и другие способы обмена изменениями между людьми и репозиториями, и один из наиболее распространённых - это email.

После фиксации (commit) изменений, мы можем экспортировать их в файл и отправить как вложение почтой кому-угодно.

Для экспорта мы используем команду export. При экспорте мы должны указать Mercurial'у тег, номер ревизии или changeset ID того, что мы хотим экспортировать. В нашем случае мы хотим экспортировать tip. При условии, что мы все еще находимся в каталоге my-hello-share, делаем следующее.

$ 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;
 }

По умолчанию export выводит patch на экран, так что обычно мы перенаправляем вывод в файл (или применяем опцию -o). Этот файл - patch file в формате unified diff, с дополнительной информацией о том, как Mercurial'у импортировать его содержимое.

Получив наш email и сохранив вложение, получатель командой import импортирует изменения в свой репозиторий.

Что бы разобраться со слиянием изменений из различных репозиториев, перейдём к "Обработка множества независимых изменений файла".


CategoryTutorial CategoryRussian

RussianTutorialExport (last edited 2012-08-13 20:30:30 by 94-153-226-116-kv)