2011-07-12 29 views
23

我們使用Trac開發我正在開發的一個開源項目。我想將我們的所有開放票導出到Github的問題。我找到了一些可以做到的小腳本,但是我想知道是否有人做過這些並且有建議。如何將Trac導出到Github問題

理想情況下,它會將trac的描述語法轉換爲降價並導出元數據(如里程碑信息),但即使是簡單的工作導出也可以。

回答

14

https://github.com/trustmaster/trac2github看起來可能效果不錯,涵蓋里程碑,門票,評論,轉換用戶名和設置受讓人。

+0

這似乎工作很好,除了沒有標籤創建,據我所知。你不會碰巧知道一個腳本,也照顧標籤? (注意,我向trac2github的所有者發送了[功能請求](https://github.com/trustmaster/trac2github/issues/2)) –

+0

此腳本僅支持MySQL數據庫,而不支持SQLite,請參閱https:// github.com/trustmaster/trac2github/issues/5 – yegor256

+2

在撰寫本文時,trac2github腳本現在支持標籤,以及SQLite和PostgreSQL Trac後端。 – ctrueden

3

我使用Trac查詢將票證詳細信息導出爲CSV文件,並使用PyGithub將它們轉換爲Github問題。您可以在http://pypi.python.org/pypi/tratihubis/找到Python腳本和Trac查詢。

CSV方法的優點是您不需要直接訪問數據庫,它可以與任何數據庫一起工作,因爲您只需要一個Trac查詢。此外,您可以在導入之前手動清理CSV,例如刪除您不想轉換爲問題的門票。

感謝PyGithub,所有這些與Github API v3一起使用。 API v2已被棄用,因此一些執行相同操作的舊腳本可能不再工作。

1

我最近需要做,而不必爲Trac的服務器直接訪問數據庫,並寫了使用Trac系統的XML-RPC接口的Python腳本:

https://github.com/acdha/migrate-trac-issues-to-github

這讓一些企圖保存用戶分配,在故障單說明和註釋中轉換Trac標記,遷移提交鏈接,將故障單引用重寫爲相應的Github問題編號,並保留用於搜索的原始Trac數據。