Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

One of the advantages of older version control systems such as CVS and SVN in enterprise development is that anyone can connect to source control and see all the projects that the company has. This can make it easier to get a high level view of what kid of development is happening outside your sprint and also keeps everything in one place and easy to find.

However, distributed version control systems (Git, specifically) use the repository as their base unit. They work best with one project (or several closely related projects) per repository. This makes repository management more difficult in most enterprise environments where it is not unusual to have more than 25-50 projects to support. As far as I have been able to determine, you have to keep a list somewhere else of all the repos you have. There is software available, like GitHub, that help, but that still is an extra step beyond a single connection string and listing the contents of the repository.

What is the best way to deal with the complexity of multiple repositories?

share|improve this question
add comment

5 Answers 5

You may create your a kind of your own Github or Gitorious

Information how you can do it can be found at Stackoverflow: Is there a Github clone that I can run on my own server?

share|improve this answer
    
Gitorious is a great piece of software, I use it all the time in a local private setup and it is awesome for what you are trying to do! –  Jarrod Roberson Jun 19 '12 at 16:47
add comment

Pro Git, the completely free book endorsed on Git's homepage explains very well how to setup a central server for managing multiple Git repositories.

http://git-scm.com/book/en/Git-on-the-Server-Gitosis

This is section 4.7 in chapter 4, I think it is a good match for your use case.

share|improve this answer
add comment

I use gitolite as far as repository management. This gives you the ability to manage each repository on an individual level down to the branch level very easily.

As far as being able to see all of the repositories at once I know there are solutions for that but I have never had the need for it.

share|improve this answer
    
We use gitolite, and it allows us to ssh into an account on the server and automatically list all of the repostiories we have access to, as well as what permissions we have for them. –  Chris Pitman Jun 19 '12 at 23:44
add comment

If you are looking for a governable repository management system, try RhodeCode. It has support for forking, LDAP/AD integration, code reviews and pull-requests (coming soon).

share|improve this answer
add comment

You should take a tool to manage your repositories as units. Besides gitosis and Gitolite, there's also excellent Gitlab, looking like github.

If you need several repos to build your software, Google, has depot_tools for that, it allows you to pull from different repositories. In simpler cases you can, probably, get by using git submodules. Having a code review in a single place is also a good thing, Facebook's Phabricator allows that.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.