Hello,
I don't know how to configure Vault to manage my projects :
- I have one main project, a generic web portal
- I have two specific applications (for two different customers) that I "plug" into the portal.
The arborescence is :
application 1 :
- Portal
-- DesktopModules
-- Images
-- UserControls
-- Application1
application 2 :
- Portal
-- DesktopModules
-- Images
-- UserControls
-- Application2
And in both cases the web portal references different Business Layer dlls.
Could you help me configure Vault to manage these projects ? Do I have to use sharing or branching... ? Or do I have to create two folders and duplicate the web portal code ?
thanks in advance
Vault configuration advice
Moderator: SourceGear
If you use IDE integration, sharing can be problematic (see http://support.sourcegear.com/viewtopic.php?t=890).
I would recommend that you try to arrange everything in parallel, with solutions at the root level. For example:
$/projects/App1.sln
$/projects/App2.sln
$/projects/App1/App1-specific-projects-and-code
$/projects/App2/App2-specific-projects-and-code
$/projects/common-web-portal
$/projects/common-library
$/projects/common-images
or
$/projects/common/webportal
$/projects/common/images
Would something like this work with your projects?
I would recommend that you try to arrange everything in parallel, with solutions at the root level. For example:
$/projects/App1.sln
$/projects/App2.sln
$/projects/App1/App1-specific-projects-and-code
$/projects/App2/App2-specific-projects-and-code
$/projects/common-web-portal
$/projects/common-library
$/projects/common-images
or
$/projects/common/webportal
$/projects/common/images
Would something like this work with your projects?
The problem with Web projects is that I need to copy aspx, ascx... files in the Portal folder.
I have never used branching, but it seems I could do the following :
$/projects/Portal
$/projects/Portal/Usercontrols
$/projects/Portal/Images
......
and branch the Portal in App1 and App2 :
$/projects/Branches/App1
$/projects/Branches/App1/Usercontrols
$/projects/Branches/App1/Images
$/projects/Branches/App1/Specific
Like this I can add folders (like "Specific" folder) specific to my applications. And when I change the portal site I do a "merge branches"
Is it a correct way to use branching ?
I have never used branching, but it seems I could do the following :
$/projects/Portal
$/projects/Portal/Usercontrols
$/projects/Portal/Images
......
and branch the Portal in App1 and App2 :
$/projects/Branches/App1
$/projects/Branches/App1/Usercontrols
$/projects/Branches/App1/Images
$/projects/Branches/App1/Specific
Like this I can add folders (like "Specific" folder) specific to my applications. And when I change the portal site I do a "merge branches"
Is it a correct way to use branching ?
Branching is normally used when you want to go forward with different releases, so you would continue developing on a mainline trunk, and then have different branches for different releases, which you would merge back into the trunk when you apply bug fixes and such to the branches.
The problem with using branching for different applications is that if you make an update to common web portal files, it is difficult to propagate those changes to the individual applications that use the portal.
You might want to solve this as the project/solution file level, where you woud keep all common code files one project and then all files that are different per application in a different project. Perhaps all the common files can be put in a subfolder or subproject of the specific application?
The problem with using branching for different applications is that if you make an update to common web portal files, it is difficult to propagate those changes to the individual applications that use the portal.
You might want to solve this as the project/solution file level, where you woud keep all common code files one project and then all files that are different per application in a different project. Perhaps all the common files can be put in a subfolder or subproject of the specific application?