Шпаргалка по Sourceforge.net
Пишу это больше для себя, пока ничего не забыл (из того, что знал), а заодно может и кому-нибудь еще пригодится.
Кто не знает, sourceforge.net - это сайт, где дают место под opensource проекты со всеми удобствами вроде CVS/SVN, место под сайт, баг-трекер, место для хранения релизов программ и т.п. Где это будет возможно, иллюстрировать буду приводить на примере LJWatcher.
I. Регистрация нового пользователя
В первую очередь необходимо создать нового пользователя.
1. Идем на страницу создания нового пользователя.
2. Там вводим адрес своей почты и выбираем себе пароль. Необычно то, что про логин здесь не спрашивают.
3. Должны прислать письмо для проверки ящика, где будет адрес, зайдя на который надо будет еще раз ввести почту и пароль.
4. Попадаем на другую страницу для создания нового пользователя. Там надо ввести имя аккаунта, отображаемое имя, выбрать язык, часовой пояс и две есть галки для подписки (или не подписки) на новости сайта. Имя аккаунта и отображаемое имя не обязательно должно совпадать.
5. На следующей странице нас просят еще раз подтвердить введенные данные.
6. После этого создание нового пользователя завершено и мы получаем следующие ссылки: Изменение данных аккаунта и Документация.
II. Создание нового проекта
Итак, пользователя создали. А теперь мы хотим создать новый проект, исходники которого будут доступны всем (и это правильно (с) сами знаете чей). Для этого надо сделать следующее.
1. Входим под своим именем на странице авторизации. и попадаем на свою страницу.
2. В меню сверху выбираем Projects->Create Project. Или проще идем сюда.
3. Нажимаем внизу кнопку Next Page
4. Вводим имя проекта ( так называемый UNIX Name). В моем случае это имя было ljwatcher (маленькими буквами).
5. Принимаем предложенную лицензионное соглашение.
6. Выбираем тип проекта. В моем случае "An Open Source Software project".
7. Еще раз подтверждаем, что с лицензией согласны.
8. И еще раз.
9. Заполняем данные о проекте. Для этого выбираем:
- Тип лицензии (может быть до 6 штук). В нашем случае это BSD License.
- Для кого предназначен проект. End Users/Desktop.
- Статус разработки. Production/Stable.
- Тема программы. Internet.
- Язык программирования. C#.
- Операционные системы, под которыми будет работать программа. WinNT.
- Тип пользовательского интерфейса. Win32 (MS Windows).
- Язык. Russian.
- Используемые базы данных. Ничего.
После выбора каждого пункта надо нажимать кнопку "Add" для соответствующего пункта. Некоторые пункты могут содержать несколько вариантов.
10. Вводим краткое описание проекта. Минимум 20 символов, максимум - 255.
11. Вводим подробное описание проекта. Оно должно содержать минимум 200 символов и быть обязательно на английском.
12. Вводим описательное имя проекта. У нас это LJWatcher.
13. Проверяем и подтверждаем, что все до этого ввели правильно.
14. И нам сообщают, что в течение двух рабочих дней проверят наши данные, и, если все нормально, то проект появится на странице проектов текущего пользователя. Проверяют они похоже серьезно. Если что, могут попросить поподробнее описать проект, что он из себя представляет и т.п. Поэтому лучше сразу все описывать подробно.
15. Ждем несколько дней, периодически проверяя, что пишут на странице проектов.
16. Если проект одобрен, то мы получаем ссылку для нового проекта. Она будет иметь следующий вид - http://sourceforge.net/projects/UNIXNAME, т.е. у нас это будет http://sourceforge.net/projects/ljwatcher . А ссылка для скачиваний будет иметь вид наподобие http://sourceforge.net/project/showfiles.php?group_id=177508. Здесь нужно обратить внимание на group_id, уникальный для каждого проекта. Еще одна интересная особенность, что эти ссылки будут иметь протокол https вместо http, если вы вошли под своим пользователем.
17. Если у вас уже есть скриншоты программы, то их можно прицепить к проекту. Это делается со страницы https://sourceforge.net/project/admin/screenshots.php?group_id=177508 (естественно для вашего проекта group_id будет другой).
III. Использование SVN
Теперь, когда проект создан, можно приступать к закачке исходников на сервер, откуда их сможет получить кто угодно. На sourceforge.net кроме SVN в качестве хранилища можно использовать еще CVS. Точнее даже по умолчанию используется именно CVS, а для использования SVN надо где-то поставить галку (к сожалению уже не помню где, но она бросается в глаза на какой-то странице касательно SVN).
1. Подробности по использованию SVN со всеми адресами и командой для получения исходников из репозитория касательно именно вашего проекта находится по адресу вроде http://sourceforge.net/svn/?group_id=177508, где group_id должен быть нужного проекта.
2. Документация по использованию SVN на sourceforge.net расположена здесь.
3. Но для тех, кому не охота читать справку (да и самому чтобы в следующий раз не читать :)), выпишу основные настройки для доступа к репозиторию.
- Hostname - PROJECTNAME.svn.sourceforge.net, где PROJECTNAME - это UNIX name проекта
- Порт - 433
- Протокол - https
- Путь к репозиторию - /svnroot/PROJECTNAME
4. Т.е. для проекта ljwatcher адрес репозитория будет https://ljwatcher.svn.sourceforge.net/svnroot/ljwatcher
5. Check out (получение исходников) можно сделать следующей командой svn co https://ljwatcher.svn.sourceforge.net/svnroot/PROJECTNAME PROJECTNAME. Т.е. для нашего проекта получаем svn co https://ljwatcher.svn.sourceforge.net/svnroot/ljwatcher ljwatcher.
6. Для получения исходников логин и пароль не нужен
7. Для закачки изменений в репозиторий нужен логин и пароль пользователей, который имеют права на изменения. Например, имя пользователя, который создавал проект.
8. Чтобы посмотреть исходники в репозитории, надо пойти по следующей ссылке - http://PROJECTNAME.svn.sourceforge.net/viewvc/PROJECTNAME/. Т.е. у нас этот адрес выглядит как http://ljwatcher.svn.sourceforge.net/viewvc/ljwatcher/.
IV. Выпуск релизов
Итак, через какое-то время ваш проект развился до такого уровня, что уже и не стыдно выложить то, что получилось в удобоваримом виде (скомпилированном, например). Т.е. выпустить так называемый релиз. Это происходим следущим образом.
1. Закачиваете архив с релизом сервер. Для этого существует несколько способов, но самый простой из них - это закачивать файлы через веб-интерфейс. При этом способе загрузки действует ограничение на размер файла в 20 МБ.
- Идем по адресу https://frs.sourceforge.net/webupload
- Вводим логин и пароль учетной записи на сайте sourceforge.net
- Закачиваем файл через форму
2. Список релизов для нашего случая находится по адресу https://sourceforge.net/project/admin/editpackages.php?group_id=177508. У других проектов будет другой group_id.
3. Здесь можно (нужно, если нет ни одного пакета) добавить новый пакет. В нашел случае пакет называется ljwatcher и пока все релизы относятся к этому пакету. Для каждого пакета можно выбирать будут они доступны публично или нет.
4. Идем по ссылке "add Release" для нужного пакета.
5. Вводим название релиза (например, номер версии).
6. В большом списке файлов ищем наш только что закачанный файл и отмечаем его галкой.
7. Чуть выше можно написать комментарии к релизу.
8. Отправляем новый релиз.
V. Участники проекта
Если над проектом вы работаете не один, то в этом случае к проекту можно присоединить других участников и всем раздать права и обязанности. Для этого:
1. Выбираем в меню пункт Admin->Members или просто идем по ссылке.
2. Здесь нет ничего сложного. Идем по ссылке [Add a developer to this project].
3. Вводим имя нового участника (его так называемое UNIX name или имя аккаунта). Заметьте, что участник должен быть уже зарегистрирован.
4. Дальше вас спросят что будет делать новый участник и какие давать ему права. Среди прочего можно выбрать
- Роль нового участника (разработчик, админ, тестер и т.п.)
- Давать ли ему права админа
- Разрешить ли ему доступ к сайту, SVN или CVS
И еще несколько пунктов касательно того, что может делать новый участник проекта.
Вместо заключения
Вообще про sourceforge.net можно писать похоже книги. Уж столько там всего интересного и не всегда понятного. Например, я до сих пор не понял окончательно как закачивать файлы для сайта, который дается под проект. Сайт имеет вид http://PROJECTNAME.sourceforge.net. Но там какая-то хитрая и запутанная система авторизации. Но, если мне все-таки откроется истина удастся с ней разобраться, то я, конечно об этом напишу. Так же для каждого проекта дается не публичный ftp, куда можно закачивать файлы, доступные только участникам. Есть система для приема пожертвований, есть возможность создания виртуальных хостов и много чего еще.
Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.