5
votes

I have a single SVN repository containing multiple projects, e.g.

  • /molindo/trunk/foo
  • /molindo/trunk/bar
  • /molindo/trunk/baz

Currently, I've configured 3 projects, all using the shared VCS root /molindo.

By default, every commit would trigger build of all 3 projects (although trunk/foo doesn't care about changes in trunk/bar or trunk/baz). As I've seen, it's possible to configure VCS triggers (e.g. +:/trunk/foo/** for project foo). While this works for build triggering, it still shows pending changes for other projects.

So what are my options now. I could think of

  1. accept unrelated changes shown as pending on UI
  2. go back and create VCS roots for each project

Both options are suboptimal. The first because it's ugly, the second because it's cumbersome. Is there another option I don't know of? Or is there another (preferred) to build multiple projects from a shared SVN repository?

2

2 Answers

5
votes

It's possible using "Checkout Rules" on a single VCS root:

  • "+:trunk/foo" for foo
  • "+:trunk/bar" for bar
  • "+:trunk/baz" for baz
1
votes

Please, try to use the following VCS Trigger rules

VCS Trigger rules for project "foo":

+:/trunk/foo/**   
-:/trunk/bar/** 
-:/trunk/baz/** 

VCS Trigger rules for project "bar":

+:/trunk/bar/** 
-:/trunk/foo/** 
-:/trunk/baz/** 

VCS Trigger rules for project "baz":

+:/trunk/baz/** 
-:/trunk/foo/** 
-:/trunk/bar/**