0

Cross project trac integration in svn

It would be awesome, if an svn commit could be registered or canceled when it is referencing a remote trac in it's commit log.

I'm asking for a deterministic result either cancel the commit with a server side hook, or accept and register it.

Current documentation list trac integration in the system. A user committing have no way of knowing if it was or was not registered in the remote repository .

I'm using git-svn on the client side, but any svn capable client could be used in this workflow.

Back story:

svn project shuttle_development
svn project shuttle_crew

Each project has it's own trac installation.
Different users exist on each project.

Use case:

Shuttle driver open a ticket in shuttle_crew trac, with the bug "stick malfunction". index 10.

Shuttle development user adjust the stick operation, and does a commit in shuttle_development project with a reference to bug 10 in project shuttle 10.

done via :

git commit -m"Adjust lever to reduce stick recoil reported as bug #10 in project shuttle_crew [t: 10, s:trac, p:shuttle_crew]"

git svn dcommit


Committing to https://spaceworks.svn.cloudforge.com/shuttle_development/trunk ...
A folder/stick
Committed r98993
A folder/stick
r4567 = 508f0afa675ee96e86c7d75f1ec82cf710a5ec0a (refs/remotes/git-svn)
First, rewinding head to replay your work on top of it...
Applying: Adjust lever to reduce stick recoil reported as bug #10 in project shuttle_crew [t: 10, s:trac, p:shuttle_crew]
revision 4567
M folder/stick
Committed r4568
M folder/stick
r4568 = 51975a8173021c0473d55538315c57365f26703a (refs/remotes/git-svn)
No changes between 9fa4daa58afd7df1b2373e0446267ae61b15511a and refs/remotes/git-svn
Resetting to the latest refs/remotes/git-svn

Expected behavior

Accepted reference :

Trac of shuttle_crew has a reference, even just a comment that commit r4568 in a different repository had referenced that.

Rejected reference (not supported/ blocked )


During commit an svn server side reject hook will block the commit :

git svn dcommit


Committing to https://spaceworks.svn.cloudforge.com/shuttle_development/trunk ...


svn: Commit failed (details follow):
Cross project trac reference is not supported.


Current status:

 

git svn dcommit


Committing to https://spaceworks.svn.cloudforge.com/shuttle_development/trunk ...
A folder/stick
Committed r98993
A folder/stick
r4567 = 508f0afa675ee96e86c7d75f1ec82cf710a5ec0a (refs/remotes/git-svn)
First, rewinding head to replay your work on top of it...
Applying: Adjust lever to reduce stick recoil reported as bug #10 in project shuttle_crew [t: 10, s:trac, p:shuttle_crew]
revision 4567
M folder/stick
Committed r4568
M folder/stick
r4568 = 51975a8173021c0473d55538315c57365f26703a (refs/remotes/git-svn)
No changes between 9fa4daa58afd7df1b2373e0446267ae61b15511a and refs/remotes/git-svn
Resetting to the latest refs/remotes/git-svn

But when I go and visit trac of shuttle_crew there is no indication for this commit. and as you can see there is also no error from the svn server to notify me that it was not registered.

0 comments

Please sign in to leave a comment.