最近、tracを0.10から1.0にアップグレードし、tracインスタンスをsvnおよびgitリポジトリに正常にリンクしました。
ただし、受信後のgitリポジトリのセットアップ中にいくつかの大きな問題が発生しました。
ここでプラグインスクリプトを試しました:
http://trac-hacks.org/wiki/GitPlugin#post-receivehookscripts
しかし、git post receiveは、標準入力で$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)。
最新のgitpushのすべてのコミットIDを取得する方法があるのだろうか?または、私は実際にここで何かを見落としていましたが、それを行うためのもっと簡単な方法がいくつかありますか?
ありがとう。