2012-03-28 64 views
0

我們有TRAC 0.11服務器。不幸的是,我們已經刪除了我們項目中的一個里程碑。如何恢復已刪除的里程碑並在已刪除的Milstone中打開門票?TRAC里程碑恢復

當我運行里程碑列表命令時,它不顯示我已刪除的里程碑信息。如果任何機構知道恢復已刪除的里程碑和門票。幫助將不勝感激

回答

0

你需要一個工具,可以讓你直接執行SQL對數據庫被用於Trac的。默認情況下,Trac安裝爲使用SQLite,SQLite網站有一個很好的清單tools,可用於編輯SQLite數據。

找到您的SQLite數據庫的位置(您可以查看您的trac.ini文件),然後使用SQLite網站上列出的tools中的任何一個執行上面列出的查詢。

2

刪除里程碑並不標記它刪除所以它不能簡單地恢復。您的門票沒有消失,它們現在僅與當前已刪除的里程碑相關聯。

你可以做的是:

  1. 重新創建里程碑Trac的
  2. 使用SQL訪問仰望的變化事件,查找受影響的票ID,然後更新這些回刪除的里程碑。
  3. 在本例中,里程碑是M5。您需要確定時間當它發生,所以你限制你的「修復」,以實際的里程碑刪除事件

    UPDATE ticket set milestone = 'M5' WHERE id IN (
    SELECT ticket FROM ticket_change WHERE 
    field = 'milestone' AND 
    oldvalue = 'M5' AND 
    newvalue IS NULL AND 
    time > '1332955533289000' -- put in the right time for where your delete happened 
    ORDER BY "time" DESC)