GitPluginを使用してGitリポジトリと統合されたTrac 0.11.7環境があります。このリポジトリにはポスト受信フックがあり、GitPluginチームが提供するフックのcopyです。ポスト受信フックは、同じチケットの複数のコミットを含むプッシュ時にTracチケットを更新できません
開発者が変更をサーバーにプッシュすると、受信後フックがトリガーされます。パックに1つのコミットが含まれていれば、すべてが完全に動作します。個々のコミットメッセージはそれぞれのチケットに関連付けられています。
しかし、同じチケットのためのいくつかのコミットがある場合にのみ、最新のコミットコミットの残りの部分について、次のエラーで、チケットに関連付けられます:
予期しないエラーがチケットID 1の処理中:カラムチケット、時間、 フィールドは
一意ではありません(Pythonで書かれた)フックが分析されており、機能handle_commit
で呼び出しticket.save_changes(eml, msg, now, db, cnum + 1)
の引数now
の時刻部分のみが異なっていることと思われます順次処理されたコミットのミリ秒単位。
Tracに使用されるデータベースはSQLiteです。ほとんどの場合、日付/時刻型の一部としてミリ秒は処理されません。
上記の状況を解決するにはどうすればよいでしょうか?