Request: Allow renaming of cloned repositories

Would it be possible to add an option to rename a cloned configuration or project repository? We have 7 development teams, who all work on a large number of different solutions that we run through the CI process. Cloning projects and configurations is very handy, but then we have to recreate all the configuration level repositories. If there was an option to rename them when cloning that would be more efficient - we would only need to updated the branch being monitored after cloning.

For example, I'm currently using a Project for each team, and a Configuration for each app like so:

Project: DevTeam1
Configuration: ProductA
Repository: TFSRoot\DevTeam1\ProductABranch
Configuration: ProductB
Repository: TFSRoot\DevTeam1\ProductBBranch

When I clone this project for DevTeam2, the only difference in most of the information is the team name. So having to recreate every repository for a project with 18 configurations in it is painful.

Hi Andy,

We will add an item to our to-do list to allow repositories to be copied and renamed when cloning in the future.

Meanwhile, we would advise having one project-level repository and using branch mapping to set the default branch for each configuration. Set the Relative Folder for this repository to "DevTeam1" and the Branches to Monitor to "All Branches" or "By Pattern". Select the Default Branch for each configuration in the Configuration Repository Branch Mappings dialog.

This would reduce the number of repositories to recreate when cloning a project, and, depending on the size of team folder, may also improve performance as there will be less repository checkers polling repositories every so often.

Thanks Dave, did not think about doing it that way. Went in and cleaned up and changed to project repositories per your advice. It would still be handy to not have to recreate that repository for every project, though.

Ok, I don't think this setup is working like we expect it to. Not sure if this is a bug or not...

We have the project repository set to All Branches, and it is successfully monitoring and catching changesets.

In the configuration Mapping, we have set the Default Branch in the Repository to a specific branch.

In the configuration, we have the Trigger set to Repository, Default Branch.

However, the builds are *not* triggering from changesets on the branch.
If we change the trigger to All Branches, it will trigger on a changeset, but it triggers if any check in is made in the monitored folder. I've attached screenhots of our settings (2 more in subsequent reply)


We are currently using verion 1.8.1.971

oops, missed a screenshot in my initial reply. This is the TFS tab of the repository:

Hi Andy,

The Default Branch setting in the Mappings dialog defines the "Branch to build by default when manually starting a build for this configuration". This does not apply to triggers.

A trigger which set to trigger on the default branch, runs a build when there is a new changeset on the repository Default Branch. This is set in the repository dialog (under the Branches tab). Ensure that this is set this to "/Products/Advisor". Alternatively, you can set a specific branch for the trigger, by setting the Trigger On pattern matched branches option in the trigger dialog to "/Products/Advisor".

That's confusing but ok. I guess pattern matching is how we'll be doing things.