Closed markcowl closed 6 years ago
Someone made another option called git-subrepo that tried to resolve the issues with git-submodule and git-subtree. I think it is worth a try to see if collaborators would need to install this to develop on our repos. https://github.com/ingydotnet/git-subrepo
Here is a good doc on git-subtree: https://www.atlassian.com/blog/git/alternatives-to-git-submodule-git-subtree
A basic blog post on git-submodule: https://github.com/blog/2104-working-with-submodules Lessons learned post: https://blogs.ancestry.com/ancestry/2015/02/26/lesson-learned-sharing-code-with-git-submodule/
An alternative idea is that we could simply make the AzPsCommon repo [working title] a separate repo entirely. We have it shared as a NuGet package, and AzPsRm and AzPsSm get the AzPsCommon package from NuGet. This blog post has some information related to our situation, and they gave up with trying to use git-subtree and simply used a NuGet feed: http://chrisoldwood.blogspot.com/2016/08/sharing-code-with-git-subtree.html I'm leaning toward this idea since it is easiest for our RPs to use. No crazy Git commands involved. And, we can control when to update the dependency on our AzPsCommon for the solutions in AzPsRm and AzPsSm.
src
and has the project folders under that (or possibly a categorization, then projects). No need to have the current elaborate depth we currently use. Please include this issue in the creation of the service management repo: https://github.com/Azure/azure-powershell/issues/6379
Here is the basics of restructuring the repo layout. There is definitely more to be fleshed out as the work is being done, but this is a good starting point.
In terms of work items,
Based on:
Other references:
*.md - Templates (Issue, PR, etc.)
]Was 'setup' before
]Moved and renamed
]Renamed from 'AzureBackup'
]Renamed from 'AzureBatch'
]v Rename or merge into 1 module? v
]^ Rename or merge into 1 module? ^
]Change to 'MachineLearning.Compute'??
]Moved and renamed
]Should be merged with Profile???
]Was 'documentation'
]Was 'LocalFeed'
]
Samples geared towards partners
]Not in git repo
]Output of build.proj - Replaces 'Package'
]Remove this
]Team-shared Resharper project settings
]Team-shared Resharper project settings
]What is this for?
]
Remove this
]Not in git repo
]User-specific Resharper project settings
]User-specific Resharper project settings
]Output of build.proj
]
Description
We plan to split repository into 3 pieces:
(1) Common code, Profile, and Tools (2) ResourceManager (3) ServiceManagement
Prototype part of this modeling using git submodules or git subtrees, decide on the best mechanism, roughly size the work to do this and file issues.
Cost: 10