我最近將trac從0.10升級到1.0,併成功將trac實例鏈接到svn和git存儲庫。git trac post-receive hook
但是,在設置git repositories post-receive hook期間,我遇到了一些主要問題。
我試過插件腳本這裏:
http://trac-hacks.org/wiki/GitPlugin#post-receivehookscripts
但是,這並不工作,因爲git的郵寄方式收到似乎並不提供$ OLD_REV和$ NEW_REV標準輸入。
維基還提到,一個只需要調用下面
trac-admin TRAC_ENV changeset added <commitid(s)>
所以我把Git中的後收到腳本以下,
REV=$(git rev-parse HEAD)
trac-admin <trac-repo> changeset added <repo-name> $REV
它不工作的大部分時間。但是,如果用戶嘗試一次推送多個提交,git rev-parse HEAD
將僅檢索最後一個提交ID(而不是最後一次推送的提交ID列表),因此某些提交將從Trac中丟失(從node_change
表中刪除trac db)。
我不知道是否有一些方法來獲取所有提交ID的最新git推?或者我在這裏忽略了一些東西,還有一些更微不足道的方法可以做到這一點?
感謝。
你不會碰巧知道如何做到這一點在Windows上,不是嗎? – 2013-07-08 14:57:44
nope,從來沒有嘗試過在Windows之前。 – 2013-07-09 02:17:43