Common Component Problem Migration from SVN to GIT

Hi All

I need help to migrate my SVN repository to GitHub.

I have Following structure as of now
—|Trunk
--------|Trunk/Project1
--------|Trunk/Project2
--------|Trunk/Project3
--------|Trunk/Project4
--------|Trunk/Common Components

SO everything is in trunk and Common components are being used across all the projects.

Now MY Question is:
Q: If I Migrate the whole Trunk to one Repository
A) Every time I need a feature branch, I need to take a pull for all the projects.
B) When I create a pull request and merge it into the build branch through my pipeline, It will build all the projects.

Or If I want to use separate Repositories for each project and Common Components,
A) How Can I Configure common components to use across all the projects?

Also, The projects are on the bassed on various versions of the .net framework.

Kindly Help and suggest the best practices for this case.

Thanks in Advance

Regards
Brijender Ahuja

Hi Brijender! :wave: Welcome to the Community!

Have you seen the help page about Subversion and GitHub?

https://help.github.com/en/github/importing-your-projects-to-github/working-with-subversion-on-github

The standard GitHub way of working would involve splitting your project among multiple repositories, so that each project was a single repo, rather than having a large monorepo, which would have the problems you describe.

If you use separate repos, common components can be handled with submodules:

https://help.github.com/en/github/importing-your-projects-to-github/what-are-the-differences-between-subversion-and-git#including-subprojects

Hopefully that helps! I’d be interested in hearing how other people handle this kind of migration!