Введение в CVS Конспект первого дня двухдневного курса по CVS
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: шпори на пятках, скачать реферат по истории
| Добавил(а) на сайт: Фивея.
Предыдущая страница реферата | 2 3 4 5 6 7 8 9 10 11 12
Когда вы решите, как именно справиться с конфликтом, уберите маркеры из кода и отредактируйте его. В этом случае, так как ваша обработка ошибок определенно лучше, то просто отбросьте чужой вариант, оставив такой код: /* Look up the IP address of the host. */ host_info = gethostbyname (hostname); if (! host_info)
{
fprintf(stderr, "%s: host not found: %sn", progname, hostname);
exit(1);
}
sock = socket (PF_INET, SOCK_STREAM, 0);
Теперь протестируйте изменения и зафиксируйте их:
$ make
gcc -g -Wall -Wmissing-prototypes -lnsl -lsocket httpc.c -o httpc
$ httpc GET http://www.cyclic.com
HTTP/1.0 200 Document follows
Thu, 31 Oct 1996 23:04:06 GMT
...
$ httpc GET http://www.frobnitz.com
httpc: host not found: www.frobnitz.com
$ cvs commit httpc.c
Важно понимать, что именно CVS считает конфликтом. CVS не понимает семантики вашей программы, он обращается с исходным кодом просто как с деревом текстовых файлов. Если один разработчик добавляет новый аргумент в функцию и исправляет все ее вызовы, пока другой разработчик одновременно добавляет новый вызов этой функции, и не передает ей этот новый аргумент, что определенно является конфликтом -- два изменения несовместимы -- но CVS не сообщит об этом. Его понимание конфликтов строго текстуально. На практике, однако, конфликты случаются редко. Обычно они происходят потому, что два человека пытаются справиться с одной и той же проблемой, от недостатка взаимодействия между разработчиками, или от разногласий по поводу архитектуры программы. Правильной распределение задач между разработчиками уменьшает вероятность конфликтов. Многие системы контроля версий позволяют разработчику блокировать файл, предотвращая внесение в него изменений до тех пор, пока его собственные изменения не будут зафиксированы. Несмотря на то, что блокировки уместны в некоторых ситуациях, это не всегда подход лучше, чем подход CVS. Изменения обычно объединяются без проблем, а разработчики иногда забывают убрать блокировку, в обоих случаях явное блокирование приводит к ненужным задержкам. Более того, блокировки предотвращают только текстуальные конфликты -- они ничего не могут поделать с семантическими конфликтами типа вышеописанного -- когда два разработчика редактируют разные файлы.
Footnotes
(1) Интересно, почему это вообще не -u? Прим. перев.
(2) Все же лучше использовать -u. Прим. перев.
Список литературы
Скачали данный реферат: Shpak, Jandiev, Malina, Korotchenko, Lashkin, Njamin, Bagrov.
Последние просмотренные рефераты на тему: класс, море реферат, реферат связь, конспект урока по математике.
Категории:
Предыдущая страница реферата | 2 3 4 5 6 7 8 9 10 11 12