powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите настроить экспорт из CVS в DocumentRoot апача при помощи shell-скрипта по крону.
2 сообщений из 2, страница 1 из 1
Помогите настроить экспорт из CVS в DocumentRoot апача при помощи shell-скрипта по крону.
    #32658004
CVS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
CVS
Гость
Есть сервер с FreeBSD 4.8-RELEASE
Есть CVS-репозиторий на нем...
На этом же сервере - апач
Надо чтобы по крону раз в две минуты - пока идет разработка, слишком часто делаются коммиты, - надо делать экспорт из cvs-репозитория в DocumentRoot апача.

Сделал shell-скрипт:
Код: plaintext
1.
2.
CVSROOT=/usr/home/cvsroot
export CVSROOT
cvs export -D  01 / 01 / 2005  -d /usr/home/username/htdocs/sitename.ru sitename.ru

На странице http://cvs.ru/cvs-ru.html#SEC131 читаю:
CVS.RU
Команда export: экспортировать исходные тексты

Краткая сводка: export [-flNnR] [-r rev|-D дата] [-k subst] [-d dir] модуль...
Требует: репозиторий.
Изменяет: текущий каталог.
Эта команда похожа на команду checkout; еЁ нужно использовать, если вы хотите получить копию исходных текстов модуля без служебных каталогов CVS. Например, команду export можно использовать, чтобы подготовить исходные тексты для передачи вовне. Эта команда требует указания даты или метки (с помощью ключей `-D' или `-r'), чтобы вы могли воспроизвести те же самые файлы, которые вы отдаете.

Часто при использовании cvs export приходится указывать флаг `-kv'. При этом ключевые слова будут развернуты так, чтобы при импорте в другом месте не потерялась информация о ревизиях. Помните, что в этом случае бинарные файлы не будут корректно обрабатываться. Также помните, что после использования флага `-kv' больше нельзя будет использовать команду ident (являющуюся частью пакета RCS), которая ищет строки с ключевыми словами (см. ident(1)). Если вы хотите использовать ident, то не используйте `-kv'.

Ключи команды export
Команда export поддерживает стандартные ключи, описанные в See section Стандартные ключи командной строки.

-D date
Использовать саму свежую ревизию не позже чем date. @std-option-f @std-option-l
-n
Не выполнять программ при извлечении. @std-option-R
-r метка
Использовать ревизию метка.
Вдобавок поддерживаются следующие ключи (общие для checkout и export):

-d dir
Создать для рабочих файлов каталог dir, а не использовать имя модуля. See section Ключи команды checkout, где полностью описаны детали обработки этого флага.
-k subst
Установить режим подстановки ключевых слов (see section Режимы подстановки).
-N
Полезно только при использовании вместе с `-d dir'. See section Ключи команды checkout, где полностью описаны детали обработки этого флага.



1) Создал проект, репозиторий
2) Выполнил checkout обратно на диск в пустую директорию
3) Добавил структуру каталогов и сами скрипты
4) Закоммитил в репозитоорий

5) Запускаю скрипт - получаю:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
cvs export: Updating /usr/home/username/htdocs/sitename.ru
? /usr/home/username/htdocs/sitenameru/access.log
? /usr/home/username/htdocs/sitename.ru/cfg
? /usr/home/username/htdocs/sitename.ru/design
? /usr/home/username/htdocs/sitename.ru/error.log
? /usr/home/username/htdocs/sitename.ru/lang
? /usr/home/username/htdocs/sitename.ru/lib
? /usr/home/username/htdocs/sitename.ru/source
? /usr/home/username/htdocs/sitename.ru/sql
? /usr/home/username/htdocs/sitename.ru/www

6) Изменил 1 файл 111.php
7) Запускаю скрипт - получаю:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
cvs export: Updating /usr/home/username/htdocs/sitename.ru
cvs export: move away /usr/home/username/htdocs/sitename.ru/ 111 .php; it is in the way
C /usr/home/username/htdocs/sitename.ru/ 111 .php
? /usr/home/username/htdocs/sitenameru/access.log
? /usr/home/username/htdocs/sitename.ru/cfg
? /usr/home/username/htdocs/sitename.ru/design
? /usr/home/username/htdocs/sitename.ru/error.log
? /usr/home/username/htdocs/sitename.ru/lang
? /usr/home/username/htdocs/sitename.ru/lib
? /usr/home/username/htdocs/sitename.ru/source
? /usr/home/username/htdocs/sitename.ru/sql
? /usr/home/username/htdocs/sitename.ru/www

8) Делаю простой update локального репозитория при помощи WinCVS - все изменения естественно зафиксированы... Т.е. коммит прошел.

Знаю, что если при апдейте стоит ? - это значит, что CVS определила обновляемый файл/каталог как не-CVS файл/каталог.
Если С - значит конфликт версий


Как такое может быть?

Догадываюсь, что вся проблема с ключом -D
по ходу надо как то генерить шеллом текущую дату
CVS.RU-D date
Использовать саму свежую ревизию не позже чем date. @std-option-f @std-option-l

Уважаемые, помогите разобраться с ключами команды cvs export
...
Рейтинг: 0 / 0
Помогите настроить экспорт из CVS в DocumentRoot апача при помощи shell-скрипта по крону.
    #32658979
CVS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
CVS
Гость
Это очень важно! Помогите плиз...
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите настроить экспорт из CVS в DocumentRoot апача при помощи shell-скрипта по крону.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]