Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

If I make an analogy with the hosting of a web server, I would say that git's data should be in /var/git, so my git repository would be in /var/git/myrepo

Q: Is that the right guess ?

share|improve this question
add comment

6 Answers

up vote 12 down vote accepted

There is no right or wrong answer here, except the one dictated by your own personal religion and the contents of the hier(7) manpage on your system.

typical Linux hier manpage ; typical BSD hier manpage)

/var/git/* seems reasonable to me personally. That's where I keep mine.

share|improve this answer
    
Similarly, in Arch Linux apache's folder is /srv/http (instead of /var/www like some other distros) so I put my git stuff in /srv/git. –  trusktr Jan 30 at 8:14
add comment

Place it in a directory (or shared filesystem) under /srv. This is what it's for.

The /srv directory is intended for site-specific data served by the system. From the standard:

This main purpose of specifying this is so that users may find the location of the data files for particular service, and so that services which require a single tree for readonly data, writable data and scripts (such as cgi scripts) can be reasonably placed. Data that is only of interest to a specific user should go in that users' home directory.

The methodology used to name subdirectories of /srv is unspecified as there is currently no consensus on how this should be done. One method for structuring data under /srv is by protocol, eg. ftp, rsync, www, and cvs. On large systems it can be useful to structure /srv by administrative context, such as /srv/physics/www, /srv/compsci/cvs, etc. This setup will differ from host to host. Therefore, no program should rely on a specific subdirectory structure of /srv existing or data necessarily being stored in /srv. However /srv should always exist on FHS compliant systems and should be used as the default location for such data.

Distributions must take care not to remove locally placed files in these directories without administrator permission.

share|improve this answer
add comment

On my Arch Linux I have /srv/http for apache (which is system default) and I use it for my node.js http servers too. Similarly I decided to just put all git repositories in /srv/git.

I use GitLab, and /srv/git is the home folder for git in that case too.

Ultimately, it's up to you. I found that sticking to a format similar to other services in your distro is easy to remember.

share|improve this answer
add comment

As voretaq7 said, there is no right or wrong answer on such a subject. However, if you want to follow of softs, it seems that database softs store their data in

/var/lib/soft

For example, for Postgresql 9.1 on debian the folder is

/var/lib/postgresql/9.1/

So I would personnaly choose

/var/lib/git
share|improve this answer
add comment

It's entirely up to you. Optimally, though, you should put the git data dir on a separate partition or even disk to make system upgrades etc. easier and of course, you have to make sure that there is enough disk space available.

share|improve this answer
add comment

If you use some frontend to git, just go with wherever the one packaged by your distribution wants to place them. Anything else is just creating needless incompatibilities.

share|improve this answer
    
1/ I'm not using a frontend to git 2/ Git doens't come with a recomendation on where to place git repositories... any folder where you do git init is a git repository. –  Samuel Rossille Mar 1 '13 at 21:45
    
1/ By front end i would assume the git server serving the repos. 2/ any such server, even if only a HTTP server is used would have a default location. Of course we are talking about the location for hosting, when you work with the code the .git is mostly inside the project. –  phq Jan 30 at 17:23
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.