
GitLab – Open Source Git Management Software - hiby007
https://www.gitlab.com/
======
Rygu
We use and love Atlassian Stash
([https://www.atlassian.com/software/stash](https://www.atlassian.com/software/stash)),
it's excellent for code reviews. The diff view options and commenting make it
easy to create pull requests, get feedback and eventually merge code into the
master branch. (Per branch permissions are awesome too.)

Long time ago we also assessed GitLab and found it usable but not quite there
yet for production use. Though it looks nicer now.

~~~
objnotdefined
Thanks for the feedback (and others) on stash. Right now we're down to
choosing between Stash and a couple others, and it seems to be the best choice
for the team.

Hey anything is better than SVN which is what we use now!

~~~
icefox
On the Admin side it has been easy to get up and running for testing, the
upgrades are pretty painless and come on a time based release cycle. The docs
are decent and there is a rest api and the company has been very responsive to
tickets we file. And it is _significantly_ cheaper than github:fi.

On the user side it hits all of the big items and the interface is useable. It
doesn't have some features like GitHub's image diff or gh_pages support, but
for many things there are Stash plugins that either exists or you can write.
And they provide an easy way to not leak internal url's while using gravatar
([http://benjamin-meyer.blogspot.com/2014/03/how-to-stop-
leaki...](http://benjamin-meyer.blogspot.com/2014/03/how-to-stop-leaking-your-
internal-sites.html))

The biggest downside I have at this point would be that out of the box the
permissions model is not as rich/robust as gitolite. Although most Git
frontend servers are no where near as rich as gitolite.

------
ridruejo
BitNami (I'm a cofounder) provides free installers, VMs and cloud images for
GitLab. You can also spin 1h demos.
[https://BitNami.com/stack/gitlab](https://BitNami.com/stack/gitlab)

~~~
sytse
GitLab B.V. CEO here, BitNami has been making and supporting VM's for GitLab
for a long time, highly recommended.

~~~
ridruejo
Thanks! We are big fans of GitLab as well :)

------
Touche
Ah, finally a proper package!
[https://www.gitlab.com/downloads/](https://www.gitlab.com/downloads/)

This will make GitLab an easier choice in the future. If you're looking for a
lighter choice Gitbucket is really nice:
[https://github.com/takezoe/gitbucket](https://github.com/takezoe/gitbucket)

~~~
sytse
Glad you like the packages! It took some effort to package it but thanks to
the example of Omnibus-Chef it turned out really nice. (GitLab B.V. CEO)

~~~
favadi
Why the package version is outdated? 6.5?

~~~
sytse
It is 6.7 isn't it?

------
davedx
We've been using Gitlab side by side with Github for the past few months. In
general it's a very nice replacement, but one thing I've been fighting with
lately is code review capabilities.

The problem I've been having is when I go to a commit, in Github I'll be able
to see what's changed (the diffs), but in Gitlab I often get "diff too big and
not shown for perf reasons" or suchlike. This inability to reliably view diffs
makes me wonder how we're going to do code review on projects hosted on
Gitlab.

Does anyone else have experience with this, or any workarounds?

~~~
sytse
The main workaround is to keep your commits small. If you run your own GitLab
server your can also tune the constants that affect this behavior. If you have
a good use-case feel free to send a merge request to increase them so they get
better for everyone.

~~~
GFK_of_xmaspast
A use-case is "some people insist on making large commits". In a perfect
world, maybe otherwise, but not this one.

------
sytse
We just released GitLab 6.8 minutes ago
[https://www.gitlab.com/2014/04/22/gitlab-6-dot-8-released/](https://www.gitlab.com/2014/04/22/gitlab-6-dot-8-released/)
The main new feature of this release is protection against force pushes. Other
changes include improvements to mentioning in comments, Merge Request UI
improvements and new API features.

~~~
jbrooksuk
"Merge Request UI improvements"? Improvements? I beg to differ.

1\. You can no longer assign a MR to someone at the time of creation.

2\. The CSS looks broken.
[https://github.com/gitlabhq/gitlabhq/issues/6842](https://github.com/gitlabhq/gitlabhq/issues/6842)

3\. Successful MR's no longer turn green. There is no quick visual feedback,
it used to go green.

My team and I _hate_ the new "improvements", but appreciate the work.

------
lucasnemeth
I am working on a Brazilian public sector project, and since we only use open
source alternatives running on our own servers (for security reasons), we
chose Gitlab. It works nicely. The earlier versions consumed a lot of memory,
but recently that's getting better. Would not recommend a too lightweight
server, though.

~~~
sytse
Good to hear it is getting better, see [https://gitlab.com/gitlab-org/gitlab-
ce/blob/master/doc/inst...](https://gitlab.com/gitlab-org/gitlab-
ce/blob/master/doc/install/requirements.md) for the requirements.

------
SEJeff
Kind of surprised no one has mentioned gogs, which aims to be an on-premise
github, but written in golang with a single binary deployment:

[https://github.com/gogits/gogs](https://github.com/gogits/gogs)

~~~
StavrosK
Whenever I see things like this ("like X, but written in a different
language"), I can't help but think that there's a lot of effort wasted for
something that makes no difference to the end user. Why duplicate the whole
thing just to make deployment (something that happens once) a bit easier?

Does anyone else feel this way?

~~~
loumf
It makes a difference to me what I put on my server. I don't run any rails
apps at all because I don't understand the security implications enough and I
haven't had a rails app I wanted enough.

~~~
tenken
What security implication(s)? ... from _known_ security issues released to the
public and now patched ...

... and you know there are 0 security vulnerabilities you don't know about in
Go Lang or GoG, and it's 100% now and forever ?

... you know you can run any rails app using a localhost webserver ... just
saying.

~~~
loumf
You are right, I don't know that. But, I have an opinion on the likelihood of
future vulnerabilities and my chance of being on top of them (and my ability
to assess and remediate). My point was more that I care about the
implementation language than saying that Go was better (for me, it's not).

------
FeloniousHam
My previous experience with Gitlab (and others) led me to Gitblit:
[http://gitblit.org/](http://gitblit.org/)

Gitblit is in another universe in terms of ease of installation, upgrade and
maintenance, and very close on features. Even with a .deb package for Gitlab,
my upgrade experience with previous versions wouldn't make me leave Gitblit.
It's just dead simple.

~~~
danieldk
Moreover, Gitblit uses plain text files for everything. It may not scale to
thousands of users, but for small to medium size teams, it certainly makes
maintenance, backups, and migration easier.

------
thecodemonkey
We've been using GitLab for our production projects for almost a year now.

The biggest reason for moving from GitHub to GitLab was not having to worry
about additional cost for creating new projects (we have hundreds of projects
and most of them are rarely accessed long after they were created).

It's also neat that we have the ability to customize GitLab if we wanted to,
e.g. in 2012 we ran some experiments to create projects from templates
directly in the GitLab interface [1]

And lastly, since we're not in an environment with six-digit numbers of users
and constant DDOS attacks - we're able to keep a much better uptime than we
had before with GitHub.

[1] [http://enga.ge/development/creating-a-sturdy-deployment-
work...](http://enga.ge/development/creating-a-sturdy-deployment-workflow-
using-git/)

~~~
sytse
Great to hear this! (almost a year and already experimenting in 2012?)

~~~
thecodemonkey
Yearh, I started using GitLab for personal projects and after a bit more than
a yearh we migrated the company projects to GitLab as well.

~~~
sytse
Ah, that makes sense

------
peterwwillis
We have gitlab set up at work for our small team, but we never use it. We just
do regular old git operations from the CLI and use e-mail and Bugzilla for
issue tracking. I've wondered if maybe there was a feature of Gitlab we're not
using that we should, but so far nothing's stuck.

~~~
sytse
Have your tried merge requests to do code reviews?

~~~
peterwwillis
We do merge requests by hand (there's several ways to do reviews/merges with
git CLI), and communicate on bugs or e-mail threads. Oh, and I forgot to
mention before we integrate git with Jenkins for CI and
testing/reviewing/merging.

~~~
sytse
Consider giving merge requests a try, once you try line comments you don't
want to go back

------
hypr_geek
When we migrated over from CVS to git, we installed an instance of GitLab. It
is really awesome, a private GitHub for your needs. The setup was a pain
though, even after following the instructions. Nice to know they have a single
installable package now at
[https://www.gitlab.com/downloads/](https://www.gitlab.com/downloads/).

We also use Atlassian Stash and JIRA for a client project (the client migrated
from CVS to git) and honestly, found it to be quite similar in functionality
and not too much better for the extra costs. Mostly, it helps that both (Stash
and JIRA) are linked together, but I'm sure that can be done with GitLab and
another issue tracking software like Bugzilla.

------
jevinskie
I just got my install of Gitlab working last night. I used the omnibus package
(bundles its own nginx, ruby, postgresql, etc). I had to tweak the omnibus
settings out of the box because unicorn was timing out on the initial page
load.

After I fixed that, I disabled the bundled nginx so I could instead use the
system's nginx. I had to modify the chef configuration scripts to change
directory permissions so the www-data nginx could read the git-owned socket.

I'm very happy now that I got it working! My only nitpick (aside from some
installation frustrations) is that the syntax highlighting for large files can
be very slow. Does anyone have any tips for that?

------
joshfng
If you like GitLab, checkout GitHost
([https://githost.io](https://githost.io)) We provide hosted private GitLab
instances. We handle upgrades, security fixes, and backups automatically.

------
schrijver
A nice feature is that it also features a REST API:
[http://doc.gitlab.com/ce/api/](http://doc.gitlab.com/ce/api/)

One thing I’m curious about is performance, as with a personal project I found
the `grit` git-ruby bindings rather sluggish when loading in multiple repos…
The new `rugged` bindings are supposed to perform much better and if I
understand in time Gitlab will switch to them.

~~~
sytse
We're switching to Rugged ([https://github.com/gitlabhq/gitlab_git#move-from-
grit-to-rug...](https://github.com/gitlabhq/gitlab_git#move-from-grit-to-
rugged)) and it does perform better. But a current GitLab instance should not
be sluggish, even with grit.

~~~
schrijver
Alright, I’ll give a go. Dankjewel!

~~~
sytse
Graag gedaan

------
pushedx
An open source alternative for Mercurial and hg repositories is RhodeCode [1].
Source code at [2], this is RhodeCode running their own software. It's a nice
solution for those who prefer Hg.

[1] [https://rhodecode.com/](https://rhodecode.com/)

[2]
[https://code.rhodecode.com/rhodecode/files/tip/](https://code.rhodecode.com/rhodecode/files/tip/)

------
M4v3R
We're using GitLab for source code and issue management, as well as for
internal documentation, and I must say it's really great piece of software.
Plus, it's very actively developed and gets new features/fixes all the time.

~~~
sytse
Thanks! Great to hear that you are happy with the development rate.

------
jbrooksuk
We use GitLab where I work. I was finally able to set it up a few months ago
and we've been using it quite heavily since.

Whilst we like using it, the UI doesn't always feel intuitive and has changed
a lot over the last few versions, 6.8.0 feels worse to us — mainly due to the
weird Merge Request UI changes.
[https://github.com/gitlabhq/gitlabhq/issues/6842](https://github.com/gitlabhq/gitlabhq/issues/6842)

Still, I personally prefer the look and feel of GitHub. But it's a good free
solution and we're really grateful for the work people put into it.

------
parfe
For solo work as a dev surrounded by hardware people, I set up GitLab.
Installation took a lot of effort and had a surprising number of service
dependencies. For a single user it wasn't worth my time to install or
maintain. Though, it is a really nice product once running.

I switched to Gitweb and sd
([http://syncwith.us/sd/using/](http://syncwith.us/sd/using/)). I don't love
sd, but the overhead of managing source and tickets for myself makes the combo
worth it.

~~~
avenger123
This hasn't been mentioned it seems but I just used a turnkey vm (from
[http://www.turnkeylinux.org/](http://www.turnkeylinux.org/)) to setup Gitlab.

Looks like the vm is not the latest version but it was a painless install.

~~~
krob
This is the way I'd prefer to use gitlab. KVM/Vmware/openvz instances are the
way to go. I think they also have an amazon instance.

------
krob
At my work, we aren't using gitlab, but looked into it for our own hosted git
and it's pretty nice, considering you can do properly managed repos. We do
currently use phabricator though for source-code review, which is pretty nice.
You can also introduce new code into the system through it using their arc
tool. I think a mixture between gitlab & phabricator is pretty nice. Using
phabricator for new feature buildout & gitlab for bug tracking would be the
ultimate setup for me.

------
mrmondo
We switched from github + Gitolite to gitlab a few months back and we're
loving it. We've had no issues with it and it's really been a great move for
us.

------
mekael
At my current job we didn't have any kind of version control for our
source,(not even a sharepoint to dump things into).I spent some time trying
out a whole bunch of different intalls and finally settled on Gitlab. It's
pretty nice and I was able to get it up and running relatively quick once I
put it in it's own instance rather than sharing a postgres install with
something else.

------
dakridge
For those that want to view a demo of GitLab:
[http://demo.gitlab.com/](http://demo.gitlab.com/)

------
munimkazia
My organization has been using Gitlab for a while now. We had a few issues
earlier with integrating LDAP authentication and sorting out attachments for
the wall, but the latest version does seem to fix most issues. I am still not
very happy with the wiki though (doesn't support folders, no way to upload
images, doesn't look very good)

------
marciopl
Our company has been using Gitlab since Dec 2012, we had a small team and
small code base back then. While searching for a good inhouse github
replacement I found GitLab had what I wanted and was worth the time effort. It
has been nice to see the evolution and all the features available now.

------
yukichan
It's cool, and this is a nearly useless comment, but the logo looks to much
like an alien out of a Whitley Strieber "non-fiction" story. A little creepy
I'm saying. Gitlab needs some branding design love.

~~~
sytse
Feel free to suggest one

------
da4c30ff
I was thinking what GNU could be if they launched GitLab or some alternative
to replace the archaic Savannah. It could take the project to a whole new
level.

------
davidgerard
Grocer's Apostrophe alert! "wiki's"

~~~
sytse
Thanks for commenting, I made a note to change it.

------
balls187
I run a local gitlab appliance (provided by Bitnami) in VMWare on my dev box,
so I can easily browse various source code I have, using their web gui.

Big fan of it.

------
exabrial
I'm curious what other cool webapps people use?

I use Gitlab, Graylog, Nexus... anything I'm missing out on?

~~~
tom9729
I've never heard of Graylog, but Kibana (frontend for LogStash) looks pretty
similar.

[http://www.elasticsearch.org/overview/kibana/](http://www.elasticsearch.org/overview/kibana/)

What about CI (builds)? There's a lot of options here, but Jenkins is pretty
good. It's a bit of a hack, but I sometimes use it as a quick way to put a
frontend on a shell script. The build history is an audit log and the job
config history tracks changes to the script.

[http://jenkins-ci.org/](http://jenkins-ci.org/)

------
exabrial
+1 for gitlab. Heavy use in prod with both business and engineering users!

------
suyash
Can anyone explain why would someone use GitLab vs Enterprise Github?

~~~
panzi
Because you don't want to push your business secrets to a (US) company?

~~~
tom9729
Isn't GitHub Enterprise self hosted?

I'd imagine the main reason to go with GitLab is that it's free. GitHub
Enterprise costs more than Stash (although it offers more).

~~~
panzi
I thought not, but maybe I'm mistaken?

I know that there is some payed service that isn't self hosted.

------
62646c
Been using GitLab for a while. It's really nice

