Ответ 1
https://github.com/trustmaster/trac2github выглядит так, как будто он может работать хорошо, охватывая вехи, билеты, комментарии, конвертируя имена пользователей и назначая цессионариев.
Мы используем Trac для проекта с открытым исходным кодом, над которым я работаю. Я хотел бы экспортировать все наши открытые билеты в Github Issues. Я нашел пару небольших скриптов, которые могли бы это сделать, но мне было интересно, сделал ли кто-нибудь это и есть предложения.
В идеале, он преобразует синтаксис описания trac в уценку, а также экспортирует метаданные, такие как информация о вехе, но даже простой, рабочий экспорт, вероятно, хорошо.
https://github.com/trustmaster/trac2github выглядит так, как будто он может работать хорошо, охватывая вехи, билеты, комментарии, конвертируя имена пользователей и назначая цессионариев.
Я экспортировал информацию о билетах в CSV файл с использованием запроса Trac и преобразовал их в проблемы Github, используя PyGithub. Вы можете найти запрос Python script и Trac в http://pypi.python.org/pypi/tratihubis/.
Преимущество подхода CSV заключается в том, что вам не нужен прямой доступ к базе данных, и он работает с любой базой данных, потому что все, что вам нужно, - это запрос Trac. Кроме того, вы можете вручную очистить CSV перед импортом и, например, удалите билеты, которые вы не хотите преобразовывать в проблемы.
Благодаря PyGithub все это работает с Github API v3. API v2 устарел, поэтому некоторые старые скрипты, выполняющие то же самое, могут больше не работать.
Вы можете попробовать trac2github PHP script, который перемещает только билеты, пытаясь сохранить форматирование и порядок комментариев.
Я также написал небольшой трафик-узел, который выполняет задание: http://mavam.github.io/trac-hub.
Он использует octokit для доступа к API github и sequel для взаимодействия с базой данных trac. В результате довольно легко адаптироваться к вашей установке trac.
Мне недавно нужно было сделать это без прямого доступа к базе данных для сервера Trac и написал Python script, который использует интерфейс Trac XML-RPC:
https://github.com/acdha/migrate-trac-issues-to-github
Он предпринимает некоторые попытки сохранить пользовательские назначения, конвертировать разметку Trac в описание и комментарии к билетам, переносить ссылки фиксации, переписывать ссылки на соответствующие номера номеров Github и сохранять исходные данные Trac для поиска.