Работа с CVS на drupal.org

Главные вкладки

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 14 октября 2008 в 19:19

Часто задают вопросы, как разместить свой проект на drupal.org. На самом деле это не столь уж трудная процедура, сколько рутинная и запутанная.

Сначала нужно получить CVS-аккаунт на drupal.org. Для этого надо написать заявку, кажется, здесь - http://drupal.org/cvs-application.
Когда дадут доступ (придет подтверждающее письмо), устанавливаешь у себя CVS. Если работаешь в Винде, то для работы с CVS удобно использовать http://www.tortoisecvs.org (не нужно помнить команды CVS, поскольку эта программа добавляет контекстное меню в Проводнике, есть русский интерфейс).

Теперь собственно создание проекта (темы оформления или модуля или перевода или инсталляционного профиля).
Во-первых, в локальном каталоге (репозитории) CVS надо создать каталог для своего проекта, загрузить туда файлы проекта и отправить их на CVS-сервер drupal.org (в контекстном меню сначала "CVS Добавить содержимое..", потом "CVS Зафиксировать"). Запомним путь к своему проекту - что-то типа http://cvs.drupal.org/viewcvs/drupal/contributions/themes/вашатема/ или http://cvs.drupal.org/viewcvs/drupal/contributions/modules/вашмодуль/

Во-вторых, надо создать саму страницу проекта на drupal.org. Идете на http://drupal.org/node/add/project-project и заполняете форму. В основном все там понятно - полное имя проекта, описание, а также демо-сайт, документация, скриншоты (если есть) и т.п.
Но несколько полей могут вызывать затруднение.
"CVS tree" - это тот путь к проекту, который мы запоминали раньше. Например, http://cvs.drupal.org/viewcvs/drupal/contributions/themes/вашатема/
"CVS directory" - только последняя часть пути, что-то типа /themes/вашатема/

В-третьих, когда проект создан и файлы загружены на CVS, вам захочется выпустить релиз вашего проекта. Чтобы пользователи могли скачать файлы проекта не с CVS, а файлом-архивом со страницы вашего проекта.
В Проводнике Windows становитесь на каталог вашего проекта и в контекстном меню выбираете "CVS / Метка...", а в окошке указываете маркировку вашего релиза - DRUPAL-5--1-2. Ну или нечто подобное, где 5 - версия Drupal, 1 - версия проекта, 2 - субверсия.
Теперь снова идем на страницу проекта и выбираем "Add new release" (http://drupal.org/node/add/project_release/номерпроекта). Там выбираем из списка, какую метку использовать для вашего релиза (ту, что мы сейчас только создали: DRUPAL-5--1-2), номер версии и субверсии. Если это еще Development snapshots (т.е. рабочая промежуточная версия), то для субверсии указываем "x". Сохраняем и получаем сообщение о том, что релиз будет сгенерирован при очередном запуске скрипта. Точно не помню, но для Nightly development snapshot это произойдет примерно через 1-2 часа, для Official release несколько дольше.

Могут быть на этом этапе и сообщения об ошибке. Например, выпустить официальный релиз русского перевода для Drupal 5 мне так и не удалось. Sad Тем временем подоспела шестая версия Drupal и вопрос отпал сам собой. Smile

Вот примерно такая процедура. Могут быть неточности, ибо писал по памяти, но в целом где-то так.

Комментарии

Аватар пользователя RISK RISK 14 октября 2008 в 21:24

Давно хочу сделать аккаунт на орге, всё лень. Спасибо за заметку. По-моему на друпал.ру кто-то упоминал о том, что просто так аккаунт не дадут, попросят обосновать. Или нет?

устанавливаешь у себя CVS. Если работаешь в Винде, то для работы с CVS удобно использовать http://www.tortoisecvs.org

А в сети ещё доступен архив друпаллерс.ру? Давно скачивал с вики.друпал.ру, сейчас её вроде нет, а на том сайте есть описание работы с 'черепахой'.

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 14 октября 2008 в 22:28

RISK wrote:
Давно хочу сделать аккаунт на орге, всё лень. Спасибо за заметку. По-моему на друпал.ру кто-то упоминал о том, что просто так аккаунт не дадут, попросят обосновать. Или нет?

Не то, чтобы обосновать... Просто мне показалось, что учитывается информация, указанная у вас в аккаунте. Иначе, зачем бы им организовывать всю эту процедуру с неавтоматической выдачей CVS-аккаунтов? Smile Наверное, все-таки живой редактор смотрит аккаунты и вашу активность. И оценивает вашу вменяемость. По крайней мере, так бы хотелось. Smile

RISK wrote:
А в сети ещё доступен архив друпаллерс.ру? Давно скачивал с вики.друпал.ру, сейчас её вроде нет, а на том сайте есть описание работы с 'черепахой'.

Про архив drupallers.ru - это к PVasilii, он в свое время захомячил сайт и даже выкладывал его на безвременно ныне почившую wiki на drupal.ru.

Аватар пользователя RISK RISK 10 ноября 2015 в 11:45

"<a href="mailto:vadbars@drupal.org">vadbars@drupal.org</a>" wrote:
Просто мне показалось, что учитывается информация, указанная у вас в аккаунте.

Ну тогда, мне с таким аккаунтом - http://drupal.org/user/356428, без вопросов дадут Smile

...захомячил...
LOL.

Прикрепил если у кого нет. Это с вики давно бралось. Архив 7z, окончание txt только чтобы прикрепить файл.

Аватар пользователя elia elia 4 марта 2009 в 14:16

Проект - http://drupal.org/project/com2vb
Страница с релизом почему-то не опубликована. Ранее писалась ошибка noad_load при просмотре странички с релизом, а теперь просто на красном фоне и все... support молчит как всегда. Это очередная бага после переезда на 6-ой движок или опять виновата моя ДНК? Smile

Аватар пользователя elia elia 4 марта 2009 в 22:41

"<a href="mailto:vadbars@drupal.org">vadbars@drupal.org</a>" wrote:
Сколько времени прошло, как вы создали релиз? Может еще скрипт-релизмейкер не пробежал?

третьи сутки пошли.

Аватар пользователя elia elia 5 марта 2009 в 10:35

"<a href="mailto:vadbars@drupal.org">vadbars@drupal.org</a>" wrote:
Сколько времени прошло, как вы создали релиз? Может еще скрипт-релизмейкер не пробежал?

Если честно, то я уже запутался по полной программе. Я не программист - это хобби, для которого я выгрызаю по чуть-чуть времени дома и на работе. Работать со всеми доп программами я могу только из дома. Угробил 4 вечера подряд на попытки пробиться через этот CVS. Глухо... Сейчас думаю - а зачем оно такое мутное мне надо? Написал, на своем сайте выложил. И все. Да - широкая общественность об этом не узнает. Но я ведь мог потратить это время на написание нового кода, расширяющего функциональность - у меня даже один нетерпеливый посетитель есть Smile ( http://com2vb.reznik.kiev.ua/com2vb/alpha1.0#comments и http://reznik.kiev.ua/forum/showthread.php?t=130 ).
В общем ищу или учебник для dummy по работе с друпаловской системой распространения модулей или помощи более просвещенных в данном вопросе товарищей, которые помогут пропихнуть этот затор, так как я уже что-то и в CVS явно подпортил, но не могу понять что.

Аватар пользователя VladSavitsky VladSavitsky 5 марта 2009 в 11:09

В репозитарии нет релиза.
См: http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/com2vb/

Что-то не так с директориями:
См: http://drupal.org/project/cvs/387608 - там напротив файлов стоит NONE. Почитайте сообщение об ошибке - возможно это поможет решить проблему.

Возможно вы неверно указали папку проекта в репозитарии или не находились в папке модуля во время коммита.
Также стоит почитать сообщения об ошибках при коммите.

Аватар пользователя elia elia 5 марта 2009 в 11:30

"VladSavitsky" wrote:
В репозитарии нет релиза.
См: http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/com2vb/

Что-то не так с директориями:
См: http://drupal.org/project/cvs/387608 - там напротив файлов стоит NONE. Почитайте сообщение об ошибке - возможно это поможет решить проблему.

Возможно вы неверно указали папку проекта в репозитарии или не находились в папке модуля во время коммита.
Также стоит почитать сообщения об ошибках при коммите.


Это последствия вчерашних "развлечений" с помощью wincvs (import module сделал почти 4 дня назад):
- пытался создать новый branch - ...not allowed...
пытаюсь начать с чистого листа:
- удалил (remove) файлы из HEAD
- вроде бы как создал branch DRUPAL-5
- import module в branch DRUPAL-5
- commit
в результате ветки нет, файлов нет, с ftp архив качается...

Сейчас делаю check module с другого компьютера со своим логином:

Quote:
cvs -d :pserver;proxy=192.168.100.2;proxyport=3128:elia@cvs.drupal.org:/cvs/drupal-cont... checkout -P -- com2vb (in directory C:\)
cvs checkout: Updating com2vb
C com2vb/README.txt
cvs checkout: conflict: removed `com2vb/com2vb.css' was modified by second party
C com2vb/com2vb.css
cvs checkout: conflict: removed `com2vb/com2vb.info' was modified by second party
C com2vb/com2vb.info
cvs checkout: conflict: removed `com2vb/com2vb.install' was modified by second party
C com2vb/com2vb.install
R com2vb/com2vb.module

Настройки project:
CVS tree: http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/com2vb/
CVS directory: /modules/com2vb/

Аватар пользователя VladSavitsky VladSavitsky 6 марта 2009 в 0:27

В CVS сейчас пусто. Это можно проверить, сделав checkout из CVS, но мне кажется это очевидно.
То, что качается архив - видимо он был сделан до удаления файлов из CVS.
Сейчас нужно добавить файлы: add
Если есть папки, то каждую папку добавить.

Аватар пользователя elia elia 6 марта 2009 в 10:12

"VladSavitsky" wrote:
В CVS сейчас пусто. Это можно проверить, сделав checkout из CVS, но мне кажется это очевидно.
То, что качается архив - видимо он был сделан до удаления файлов из CVS.
Сейчас нужно добавить файлы: add
Если есть папки, то каждую папку добавить.

Почти 12 часов назад добавил файлы с версией 1.1.1.1 они check out из другого места - все ок. Но их не видно в публичном доступе к CVS.

Аватар пользователя elia elia 6 марта 2009 в 11:35

"elia" wrote:
Почти 12 часов назад добавил файлы с версией 1.1.1.1 они check out из другого места - все ок. Но их не видно в публичном доступе к CVS.

File: com2vb.module Status: Up-to-date

Working revision: 1.1.1.1
Repository revision: 1.1.1.1 /cvs/drupal-contrib/com2vb/com2vb/com2vb.module,v
Commit Identifier: 654149affe294567
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)

Аватар пользователя elia elia 6 марта 2009 в 12:30

Имею следующее:
"статусы" файлов:
Working revision: 1.1.1.1
Repository revision: 1.1.1.1 /cvs/drupal-contrib/com2vb/LICENSE.txt,v
Commit Identifier: 2f2f49aed2854567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.1)

Working revision: 1.1.1.7
Repository revision: 1.1.1.7 /cvs/drupal-contrib/com2vb/README.txt,v
Commit Identifier: 4d3049b03be14567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.7)

Working revision: 1.1.1.6
Repository revision: 1.1.1.6 /cvs/drupal-contrib/com2vb/com2vb.css,v
Commit Identifier: 4d3049b03be14567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.6)

Working revision: 1.1.1.6
Repository revision: 1.1.1.6 /cvs/drupal-contrib/com2vb/com2vb.info,v
Commit Identifier: 4d3049b03be14567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.6)

Working revision: 1.1.1.6
Repository revision: 1.1.1.6 /cvs/drupal-contrib/com2vb/com2vb.install,v
Commit Identifier: 4d3049b03be14567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.6)

Working revision: 1.1.1.6
Repository revision: 1.1.1.6 /cvs/drupal-contrib/com2vb/com2vb.module,v
Commit Identifier: 4d3049b03be14567
Sticky Tag: DRUPAL-5 (revision: 1.1.1.6)

Этот "зоопарк" с tag в вебморде репозитария просто так не виден.
Но показываются эти ссылки:
http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/com2vb/?pat...
http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/com2vb/?pat...

Что мне дальше делать?

Аватар пользователя VladSavitsky VladSavitsky 6 марта 2009 в 14:25

Я так и не понял.
Чекаут из CVS на друпал.орг своего модуля вы можете сделать?
Чекаут должен получить ветку HEAD, если вы не переключаетесь на другие ветки.
Если вы не получаете ничего оттуда, то там ничего и нет.

Аватар пользователя elia elia 6 марта 2009 в 15:22

"VladSavitsky" wrote:
Я так и не понял.
Чекаут из CVS на друпал.орг своего модуля вы можете сделать?
Чекаут должен получить ветку HEAD, если вы не переключаетесь на другие ветки.
Если вы не получаете ничего оттуда, то там ничего и нет.

Да - checkout делается. Но в репозитории HEAD не видно.

Аватар пользователя elia elia 6 марта 2009 в 21:59

"VladSavitsky" wrote:
Может быть к людям на друпал.орг, которые CVS занимаются обратиться?...

дык писал же вверху - мовчать...

В общем сейчас имею вот это:

Quote:
File: com2vb.module Status: Up-to-date

Working revision: 1.1.1.1
Repository revision: 1.1.1.1 /cvs/drupal-contrib/com2vb/com2vb/com2vb.module,v
Commit Identifier: 654149affe294567
Sticky Tag: 1.1.1
Sticky Date: (none)
Sticky Options: (none)

Existing Tags:
arelease (revision: 1.1.1.1)
elia (branch: 1.1.1)

Аватар пользователя elia elia 7 марта 2009 в 0:55

"VladSavitsky" wrote:
Может быть к людям на друпал.орг, которые CVS занимаются обратиться?...

Все убил и закатал по новой следуя буква в букву данному мануалу - http://drupal.org/handbook/cvs/quickstart
Теперь имею новый project release, кторый по-прежнему должен ждать скрипта, делающего срезы. Может в этот раз все будет удачней?

Аватар пользователя elia elia 7 марта 2009 в 0:58

"VladSavitsky" wrote:
Может быть к людям на друпал.орг, которые CVS занимаются обратиться?...

Все убил и закатал по новой следуя буква в букву данному мануалу - http://drupal.org/handbook/cvs/quickstart
Теперь имею новый project release, кторый по-прежнему должен ждать скрипта, делающего срезы. Может в этот раз все будет удачней?

Аватар пользователя elia elia 7 марта 2009 в 10:08

"elia" wrote:
Теперь имею новый project release, кторый по-прежнему должен ждать скрипта, делающего срезы. Может в этот раз все будет удачней?

Да - в этот раз все получилось. Smile
Project page - http://drupal.org/project/com2vb
Release page - http://drupal.org/node/393522

Похоже, что пофиксили ошибки.

Аватар пользователя elia elia 10 марта 2009 в 18:12

"VladSavitsky" wrote:
Ну вот. Поздравляю с релизом.

Спасибо. Smile
Они, кстати, теперь внесли изменения в страницу проекта - есть новая закладка CVS-instructions где они в основном обозначили последовательность действий при разных вариантах релизов. Мысли читают? Smile

Аватар пользователя elia elia 23 января 2010 в 17:53

Вопрос:
Проект идет по двум "веткам" под D5 и D6. Уже два блока "друпалонезависимого" кода выделены в отдельные файлы, но они все равно существуют в двух ипостасях - для D5 и D6. А еще надо готовить версию под D7... Что надо сделать, что бы эти файлы вынести за пределы основных branches, и что бы они существовали в одной ипостаси и включались в каждый релиз?