
Choose GitLab for your next open source project - ra7
https://www.b.agilob.net/choose-gitlab-for-your-next-project/
======
alexandrerond
I'll just jump in to vouch for Gitlab CE, in a self-hosted setup.

@sytse: it is one of the best documented and well packaged pieces of software
these days. Specially in the Ruby world. Thank you for that. Gitlab really
makes a difference.

Where others just distribute Docker images or directly nothing (because omg it
is too hard to do proper packaging), Gitlab has nice packages for CentOS,
Debian and Ubuntu (the distros that usually run in production servers).

We had an old install from git using mysql. Migrating to Omnibus and
converting the DB to postgresql was painless. Surprisingly, it was a perfectly
documented process without any pitfalls, or any outdated info. Omnibus
packages are just wonderful. apt-get upgrade will just do all the necessary,
DB migrations and restart all the components with almost zero downtime.

This proved to me that Gitlab actually gives uttermost care to the CE edition
and that it is not just marketing.

So thank you Gitlab for being so awesome.

~~~
sytse
Thanks Alex for posting this. I'm so glad you had a positive experience
upgrading.

We spend a lot of time making our Omnibus packages a flawless install and
upgrade experience. Docker images are great but for many users Docker is not
an option.

GitLab CE is just as performant and easy to upgrade as EE and we strive to
keep it that way
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)

Currently our team member Axil is upgrading a GitLab installation from 5.0 all
the way to the latest version to ensure it is as smooth as it can be
[https://twitter.com/gitlab/status/698236575231119360](https://twitter.com/gitlab/status/698236575231119360)

If you want to know more about upgrading GitLab please see
[https://about.gitlab.com/update/](https://about.gitlab.com/update/)

~~~
shampine
I will be honest, the switch from self compiled MySql to Omnibus Postgres was
not so great for me and my team. But. We love GitLab, and now that we are on
Omnibus I get updates done in < 5 mins. Thank you all for building an amazing
piece of software. Also kudos to your team, even as a CE user you have helped
me resolve a bug or two here and there. It's been a great ride. I wouldn't
trade our GitLab in for anything.

~~~
sytse
I'm sorry to hear the database conversion was rough. Is there anything we can
improve to the documentation to make it easier? [https://gitlab.com/gitlab-
org/omnibus-gitlab/blob/master/doc...](https://gitlab.com/gitlab-org/omnibus-
gitlab/blob/master/doc/update/README.md#upgrading-from-non-omnibus-mysql-to-
an-omnibus-installation-version-68)

Great to hear that after converting to Omnibus the updates are smooth. We try
to help all our users, customer or not.

------
sytse
GitLab CEO here. Awesome to see this article! Ask me anything.

~~~
dudul
Great job on GitLab, I really like it and started migrating my projects from
GitHub.

One thing: I never managed to make GitLab pages work. It may just be me, but I
find the existing documentation very confusing, unclear what should be the
name of the repo to host the static website, which conventions are used etc. I
would appreciate a better tutorial.

~~~
sytse
I'm sorry to hear you found the exiting documentation for pages
[http://doc.gitlab.com/ee/pages/README.html](http://doc.gitlab.com/ee/pages/README.html)
confusing.

We are planning to write a blog post about it with a walkthough
[https://gitlab.com/gitlab-com/blog-
posts/issues/39](https://gitlab.com/gitlab-com/blog-posts/issues/39)

~~~
dudul
Awesome, thanks for the fast reply :)

------
chrisblackwell
Competition is good! Forget all the hate going on against Github right now. We
should be support things like GitLab and Bitbucket more in order to get the
competition going strong. I'd like to see even more competition in this area.

~~~
CookieMon
It's amazing that we're migrating all of open source into a single centralized
proprietary basket - amazing in a slow motion trainwreck kind of a way.

After we already watched its predecessor Sourceforge fill opensource projects
with malware too. One day we're going to look back on all this and laugh "well
that was bloody stupid!"

Even Git was created to free the comunity from the commercial restritions of
BitKeeper, and the first thing we've done with git is make it centralised and
proprietary again.

(Granted the friendlier UI and social network layer is needed, and Github has
done a fantastic job there, but holy cow does this feel like watching a
trainwreck)

------
dclowd9901
Our local instance is only a version back but we find gitlab to be
terrifically slow, and regularly have to kick the server as we find it stops
tracking updates, then simply stops responding at all. Also, the diffing on
merge requests is simply awful. It regularly shits itself on spacing changes
and the like making most merge requests almost useless from a code review
perspective. Searching just doesn't work. At all. Navigation is weird and
cumbersome, with many normal features hidden away in different sections of the
UI. This causes weird situations where, since search doesn't work, I have to
just browse around for commits to a branch I want view at a certain state, and
click that commit to get to a "brows code" view. Why the fuck isn't there
simply a repo->branch->commit history->browse code path?

I personally wouldn't recommend gitlab and hope someone else is out there
working on something better.

~~~
icebraining
I have to agree regarding the slowness, and although we do have many
repositories (~100) and the machine only has 2GiB of RAM, it does feel slow
for a service that sits idle 90% of the time, and almost never gets concurrent
user access. We're on 8.0.0, so maybe it has gotten better.

That said, are you sure you don't have a very old version? There is a simple
path for accessing code in a branch, you can just click the repo, then on the
button that shows the number of branches ("N branches"), then click on the
branch you want. If you want to see the files in an older commit of that
branch, just click on "History" and then "browse files" on the commit line.

~~~
sytse
2GB of RAM for 100 repo's and a few users should be fine. But a lot of bugs
and speed improvements were made since 8.0.0, please consider upgrading, it
should be a smooth experience. Also, if you have not switched to the Omnibus
packages already consider doing it now to reduce memory usage and improve
speed.

~~~
icebraining
Thanks. We do use the Omnibus package, but I'll trying upgrading when I get a
chance. I'm preparing to "sell" Gitlab to my coworkers, and the slowness won't
help :|

~~~
sytse
I hope the upgrade helps. Certainly the upcoming GitLab 8.5 will contain a lot
of speedups [https://gitlab.com/gitlab-
com/operations/issues/42](https://gitlab.com/gitlab-com/operations/issues/42)
as long as you are not memory constrained.

------
DanielDent
The free hosted Gitlab is great. I really appreciate having it around. And if
you haven't looked at it recently, it's faster than it used to be.

Free unlimited private repos w/ 10GB storage per repo (including LFS!) is
fantastic. A recent project I worked on involved integrating ~15 upstream
modules into a build process. Having the ability to set up a git repo for each
module instead of thinking 'maybe I can come up with some hack to do this with
less repos' is huge.

Having Gitlab CI w/ the ability to use your own workers just by running a
single docker command is the icing on the cake.

And the fact that the repos which need to stay on our own infrastructure can
also use GitLab - with an open source option to boot - is what makes choosing
GitLab a very easy decision.

~~~
sytse
Awesome, glad to hear this. As you can see in [https://gitlab.com/gitlab-
com/operations/issues/42](https://gitlab.com/gitlab-com/operations/issues/42)
GitLab.com issues became 3x faster this week and we're working on further
improving speed.

------
threatofrain
Github serves two major purposes: (1) one is to be a git repository, and (2)
another purpose is to be the central meeting ground for discovery and
community participation. GitLab can serve for the purpose of being a git
repository.

The problem is that the more competition we have for (2), the less functional
any of the competitors are in serving (2).

Given that when Github goes down, a lot of tools and development workflows
also go down, I can understand there being a backup repository. But that's not
the same as serving purpose (2), that's just redundancy for (1).

The same problem exists for Facebook. The more Facebooks there are, the less
functional any Facebook is.

~~~
danieldk
_(2) another purpose is to be the central meeting ground for discovery and
community participation. [...] The problem is that the more competition we
have for (2), the less functional any of the competitors are in serving (2)._

While this is true, especially for open source projects. I'd rather see a
healthy open source community on top of an open source platform than a
proprietary one. This for two reasons:

1\. Suppose that some features are needed by an open source community. In the
case of GitHub, you have to ask and wait until they throw something over the
wall. In the case of GitLab, you can write the code yourself, submit a pull
request. With a bit of luck, it's in the next version of GitLab.

2\. Suppose that GitHub or GitLab as a company becomes evil. This is not far-
fetched, look at SourceForge. With GitLab, you could fork the latest community
edition and have pretty much the same functionality.

------
spudfkc
We use GitLab at work, and while it works great for hosting internal stuff,
any open source projects I'm still going to put on GitHub.

GitHub has the community, and I'd personally not like to see that divided, not
to mention the interface is just so much easier to use - GitLab's is mildly
infuriating.

~~~
sytse
Also discussed in
[https://news.ycombinator.com/item?id=11091964](https://news.ycombinator.com/item?id=11091964)

------
ramigb
I've been using Bitbucket for 3 years now and i absolutely love the fact that
you can create private repos and have many tools available for free, highly
recommended.

~~~
semerda
Ditto! Bitbucket has served me well for so many years esp with their ondemand
integrations. I really don't see why I should move to any other gitxxx. Moving
tools is also a pain point so best to choose wisely.

------
arianvanp
Our University recently moved from SVN to self-hosted Gitlab for internal
projects It integrates nicely with our LDAP server so that you can easily
search for collegues and students to add them to projects. I totally love it.

It's probably not a coincidence, as Gitlab used to be Utrecht-based if I
recall correctly.

Just want to thank you guys for not having to use SVN for my graduate project.

~~~
DouweM
It's not a coincidence! I study Computer Science at Utrecht University and
work at GitLab, so [https://git.science.uu.nl](https://git.science.uu.nl) only
made sense :)

A little bit of stalking shows me we're actually in a class together, see you
on Monday ;)

------
tschellenbach
I for one am a very happy user of Github. Two mid size open source projects,
dozens tiny ones and a few commercial private repos. Github has private repos
you just need to pay for them and they are actually very affordable. I've seen
developers who make >100 per hour choose bitbucket because they don't want to
pay for private repos. How is that rational...? I like Github and I like
paying them for a service I use every day.

Travis on the other hand... could use a bit of work :)

~~~
sytse
Consider using [https://about.gitlab.com/gitlab-
ci/](https://about.gitlab.com/gitlab-ci/)

It only works with GitLab repo's but on GitLab.com you can use the mirror
external repositories feature
[http://doc.gitlab.com/ee/workflow/repository_mirroring.html](http://doc.gitlab.com/ee/workflow/repository_mirroring.html)

------
tootie
Recently had a need for something like this and Gitlab ended up losing to
BitBucket Server which we bought along with JIRA and Confluence. Gitlab seems
like a nice, light solution, but their issue tracker ain't JIRA.

~~~
joshstrange
My company is using atlassian products heavily and I was surprised to find
very good support for GitLab. I run it locally and love it and I'm pushing to
use it at work.

~~~
jschumacher
It's worthwhile noting that the integration between JIRA and Bitbucket
(naturally) goes far beyond adding comments with links to a ticket.

Our aim was to provide an at the glance view of the development status (# of
commits, branches, pull requests and their status, builds and deployments)
with the option to see more detailed information right within JIRA. And of
course you can create a new branch right from your JIRA issue.

Lastly, ensuring that the data is 100% reliable and up to date was an
important consideration which most of the basic webhook integrations simply
ignore.

Take a look at the documentation, which provides a great overview of the
integration: [https://confluence.atlassian.com/jira/viewing-the-code-
devel...](https://confluence.atlassian.com/jira/viewing-the-code-development-
information-for-an-issue-445186939.html)

~~~
joshstrange
No doubt, that said I've used both before and I generally prefer GitLab to
bitbucket and so as long as the basics work I'm happy. Also GitLab can satisfy
both Bitbucket and Bamboo and since my company needs to host all apps it's
MUCH cheaper to use GitLab than to pay for 2 more tools for all developers.

------
joeevans1000
I think this is a nice article and I will take a peek at GitLab. I have to say
the following though: I have been very annoyed with the difficulty in creating
private repos in GitHub _BUT_ I think it is a brilliant plan to encourage
people to make their code available. As much as GitHub's pay-for-private-repos
approach annoys me, I think if they hadn't done that, 30% or more of what's
available on GitHub would be hidden. People made and make their code public
because they have to pay not to. Brilliant, and the right approach for GitHub.

~~~
sytse
Also discussed in
[https://news.ycombinator.com/item?id=11091964](https://news.ycombinator.com/item?id=11091964)

------
BinaryIdiot
Damn I knew GitLab was good but that article made it sound far more amazing
than GitHub. I'm impressed.

One thing I've really wanted was a voting system -> merge. Is there a way to
require X amount of votes (in general or from specific in a specific group)
which, once that is hit, allows the PR to be merged into master? Part of our
typical code review workflow is requiring a specific amount of people to
approve the PR before it goes in but it's basically the honor system right now
and it would be really cool to turn that into some sort of rule.

~~~
sytse
Sounds cool to me. Consider creating an issue for it and please indicate if
you're interested in contributing it.

~~~
BinaryIdiot
Done. I'd love to work on it but I'd unlikely have any time to do so (at least
in the near future).

[https://gitlab.com/gitlab-org/gitlab-
ce/issues/13411](https://gitlab.com/gitlab-org/gitlab-ce/issues/13411)

~~~
sytse
No problem, thanks for creating a feature proposal.

------
benatkin
GitLab EE's source code is also available, though not under an open source
license. Most of the differences are things I'd like to eventually see in an
open source project (maybe GitLab CE, maybe a plugin, maybe a fork).

From my perspective the best thing would be for them to eventually open source
some features I'd like to have in an open source project hosting service, once
they've made more reasons for people to pay them. The worst thing would be if
someone added it in a plugin or fork of GitLab CE and the company GitLab were
to claim that they must have looked at the GitLab EE source code. GitLab Pages
and audit logs are the features I'd most like to see in the open source
version.

This is much like Nginx Plus's improved load balancing with health checks,
which has me considering Tengine.

~~~
sytse
Thanks for your perspective and naming the features you would like to see in
GitLab CE. Can I ask what open source project you are considering to host on-
premises with GitLab CE?

We do try to open source features that are requested by open source projects,
such as the branded login page after a HN discussion
[https://news.ycombinator.com/item?id=10931690](https://news.ycombinator.com/item?id=10931690)

I agree that falsely accusing people of looking at the EE code would be very
bad. So far we only once declined a contribution to CE by claiming it was EE
code, in this case the code was verbatim, the diff showed a zero character
difference. Future calls will be harder but we'll try to prevent false
declines.

More about this our criteria to merge CE contributions if they are already in
EE can be found in
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)

~~~
zanny
One example would be KDE, who considered Gitlab but ended up going with
Phabricator because they are one of those 100+ developer projects that wanted
the LDAP, analytics, logging, etc but also being a major open source software
community wouldn't settle to not dogfood free software, and the CE was missing
too much at the time.

Personally, I much prefer Gitlabs project -> code / issues / milestones / etc
workflow over Phabricator's git / issues milestones -> projects workflow, and
love using Gitlab, but there are a lot of free software communities (Gnome,
Freedesktop.org, among others) who are almost certainly going to try moving to
more modern project management services in the near future and will be forced
away from the IMO best UX Gitlab offers for ones like gogs / phabricator that
both sate their needs for a free software solution that also has the
featureset for these thousand+ developer ecosystems.

~~~
sytse
Currently GitLab has LDAP, analytics, and logging. I'm glad you like the UX of
GitLab. I'm not sure what essential features are still missing from it in your
opinion. Can you elaborate?

~~~
zanny
I'm not one of the KDE web devs that run their infrastructure, I'm just a
project contributor / maintainer. There has been some historical recording of
the process that led to KDE having to give up on the idea, though:

[http://permalink.gmane.org/gmane.comp.kde.devel.community/61...](http://permalink.gmane.org/gmane.comp.kde.devel.community/618)
[https://mail.kde.org/pipermail/kde-
community/2014q1/000667.h...](https://mail.kde.org/pipermail/kde-
community/2014q1/000667.html)
[https://forum.kde.org/viewtopic.php?f=292&t=130854&p=350671#...](https://forum.kde.org/viewtopic.php?f=292&t=130854&p=350671#p350684)

~~~
sytse
Thanks for the links. I'm sorry I never got the chance to talk to the KDE
people and address the concerns we had. We're always open to adding or open
sourcing features that are needed by large open source projects.

------
dominotw
I don't know, Gitlab seems a little too enterprisey for me. For example their
documentation is too 'serious' they link to martin fowler's wiki for "feature
branch" and wikipedia for "feature driven development". Their gitlab flow has
waterflow development like production branch with things going to
"production".I do oss for fun, not to go to another job after the first one.

They don't have the cool hipster vibe that github has, github earned their
street cred. A copy cat will always be a copy cat.

All these features ppl are asking for are against the ethos of github. Can
somone give github props for well implemented git lfs.

sorry gitlab guy who is watching this thread if that was too harsh.

~~~
pearjuice
Joke's on you, the sole reason Github "community" exists is to attract
customers to their enterprise plans. That's where the money is earned.

~~~
dominotw
yea, whats your point? you expect them to host the site out of goodness of
their hearts?

HN is ycombinator trojan horse for HN startups with full censorship of
articles critical of their startups. Yet you are here aren't you?

~~~
pearjuice
The point is that you state "Gitlab seems a little too enterprisey for me" and
then call out Github as the perfect example of how it's supposed to be done.
Which is quite peculiar, given that if anything Github its motto is "how
businesses build software" \- it is an enterprise product they are building
their business on. Hence I mockingly stated that the "joke's on you".

------
j0hnM1st
Not sure what's the hype about when alternatives like Phabricator.org are much
better. Meh.

~~~
techdragon
I'm getting to a point where I may have to save my "Phabricator promotional
rant" as a text expansion of some sort. It's a prime example of people not
looking hard enough. People don't want just code hosting otherwise GitHub and
friends wouldn't have extra features.. So Phabricator lives out in "project
management software land" and no one looking for a good GitHub alternative
seems to find it... Meanwhile it's bloody amazing and deserves much more
attention.

~~~
thenomad
What are the high points of Phabricator?

I'm reading the landing page, but the terribly self-deprecating style makes it
hard to find the actual pain-point solutions buried within.

~~~
techdragon
The best way to check out Phabricator is to go look around the Phabricator
instance used by Phacility to manage the Phabricator project itself.

[https://secure.phabricator.org/](https://secure.phabricator.org/)

This gives has all their documentation, applications, and handy nearby search
to find answers to the questions you may be thinking about while checking out
each application.

~~~
thenomad
That URL gives me a not found error, I'm afraid.

------
orn
Using Gitlab on site and LOVE it, it's FREE, Big Thanks

~~~
sytse
You're very welcome, thanks for using GitLab.

------
dineshp2
I was wondering what would be the implications of publishing gitlab enterprise
edition with an MIT license and make it easy to fork without subscriptions
(basically like the community edition).

From what I understand, the real value that you are selling with an enterprise
edition is the support, dedicated staff, monitoring services and training.

~~~
sytse
We tried licensing the enterprise edition under an open source license but
asking people nicely to not distribute it. People didn't distribute it but our
customer where very confused about this so we changed the license.

The current license [https://gitlab.com/gitlab-org/gitlab-
ee/blob/master/LICENSE](https://gitlab.com/gitlab-org/gitlab-
ee/blob/master/LICENSE) is proprietary but it does allow people to see the
code, modify it and contribute patches [https://gitlab.com/gitlab-org/gitlab-
ee/merge_requests](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests)

Part of the value of a subscription is our support and training, but the
unique features of EE
[https://about.gitlab.com/features/#compare](https://about.gitlab.com/features/#compare)
also are important.

~~~
dineshp2
If you don't mind me asking, what was confusing to the customer?

Again, I don't mean to be rude, just curiosity, how would you react if people
forked the community edition and implemented some of the enterprise edition
features and released it under the MIT expat licence?

~~~
sytse
The customers didn't understand that they paid to get access to an Enterprise
Edition that had an open source license.

If people forked CE to add features of EE we would wonder why we didn't merge
those in. For our criteria for merging features that are currently EE only
please see
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)

------
darklajid
If only there were a way to get ~painless~ sync with repositories hosted
elsewhere.

I'm stuck with TFS here, which is a PITA and broken on so many levels, it's
not even funny. Running a GitLab front would solve nearly all of my problems
while still complying with the dreaded "everything in TFS" policy. :/

~~~
sytse
We don't have two-way sync but we do have mirroring of external repositories
in GitLab EE and .com. Please see
[http://doc.gitlab.com/ee/workflow/repository_mirroring.html](http://doc.gitlab.com/ee/workflow/repository_mirroring.html)

~~~
darklajid
That is more or less all that I crave. With two caveats:

\- updated once per hour or manually

Seems as if this would be generally good enough, but some sort of push
integration would be awesome

\- EE only

The dealbreaker. I understand. It makes sense to feature-gate stuff. But my
entirely personal situation is that the company enforces TFS. I (and quite
some coworkers) would prefer GitLabs features. But there's just no way for me
to ask for a budget. What for? "Replace TFS"? Not gonna happen. A C"C works
fine, everyone's convinced that we should go for GitLab only" might work.
Perhaps. But that's impossible at the moment, I guess.

~~~
sytse
1\. I agree that push integration would be awesome. Consider contributing it.

2\. Thanks for understanding. Please consider emailing sales@ company domain
to see if there are possibilities. If you are working for a large organization
we can maybe do an extended trial. Please reference this comment in your
email.

~~~
darklajid
On the off-chance that you stumble upon this again:

How would one contribute something to a feature that is EE only? Is that a
scenario that you had in the past? How does that work?

~~~
jobvandervoort
The repository of EE is publicly readable and customers have a license they
can use for development for EE.

We've had customers contribute EE-specific features and changes several times
in the past. In one case, CERN contributed improvements to certain EE-
exclusive authentication options.

The workflow is identical otherwise.

------
reactor
[https://notabug.org](https://notabug.org) is also an option

------
pori
I've used GitLab before and had a very good experience with it. Meant mostly
for private repos, however. I tried pushing it onto the teams I have worked
with in the past but they resisted because they were unfamiliar with it and
didn't want to deal with server maintenance. The latter was understandable.
Still, this really is a great solution for those who want an alternative to
GitHub, especially a decentralized one.

Albeit, I am little disappointed because I have finally started getting into
open source and being active on GitHub, and now it seems the development
community is vying for a way out. GitHub may not be open, it may be
centralized, but it does offer the advantages of uniformity and easy
discovery.

~~~
sytse
If people don't want to deal with server maintenance please consider
GitLab.com (our SaaS) and GitHost.io (our single tenant offering where we do
the upgrades and backups).

------
z1mm32m4n
I had no idea that GitLab had support for changing what type of commit is
created on-merge. That's actually a really temping feature; I've spent so much
time trying to convince people (especially those starting out) why manually
rebasing and merging is A Good Thing™.

------
hardwaresofton
Despite setting up my own gitlab instance once, and trying to get the company
I was working at onboard, I never knew that gitlab.com was a thing for hosting
projects... is this recent?

Either way, just signed up. Excited to support Gitlab, any way I can.

~~~
sytse
Thanks for signing up! GitLab.com launched after a 'Show HN' in 2012 but
recently it has been growing a lot faster, 6x project growth in 2015
[https://about.gitlab.com/2016/02/11/gitlab-
retrospective/](https://about.gitlab.com/2016/02/11/gitlab-retrospective/)

------
JohnTHaller
One error in that write-up: SourceForge is open source, not proprietary. It's
an open source project called Allura under the auspices of Apache that has
paid coders at SourceForge contributing to it.

------
r-s
I have been using GitLab for some time and I am transitioning my projects to
them currently. I prefer it to Github significantly, the downside is that
recruiters are still looking for github on resumes.

~~~
sytse
I'm not sure we should aim for more recruiters on GitLab :)

But I get your point, GitHub currently is an extension of your resume. Based
on a HN discussion we made a feature proposal to combine your GH and GL
activity [https://gitlab.com/gitlab-org/gitlab-
ce/issues/13401](https://gitlab.com/gitlab-org/gitlab-ce/issues/13401)

------
sethherr
See, here's the thing: I don't want free private repos to exist. What GitHub
has done is incentive making things open source, and that's immeasurably
valuable.

~~~
sytse
I agree that this has been a very positive effect. On the other hand forcing
people to make code public when they might not want to might lead to problems
when people are haunted by code they didn't intent to be read by others.

~~~
Walkman
Nobody is forcing anybody to make their code public. It's their choice. You
can have your code on your machine and on your servers only. Hosting your code
is an option.

~~~
pearjuice
And what if you are working with more than one person on the same private code
base? You work on the same machine? Extreme programming?

~~~
Walkman
You probably don't know how easy it is to push your code to another machine
through SSH and share a Git repository that way.

~~~
pearjuice
Actually I do, isn't that how it is most frequently done? Fact is that even
though it works and you can set it up yourself, it is not a good solution to
decentralizing a code base. You might have a private machine to which
everybody ssh'es and pushes and pulls from, but only a few do that because
they don't want to be/have the ops people who run that box. And that is
including but not limited to issues and a sane UI for collaborations. That's
very well the problem that github/bitbucket/gitlab and the like solve.

So you are telling me that there is no problem and people should just use a
private SSH connection to a box they own?

------
antman
For a git solution in python this is quite good: [https://kallithea-
scm.org/](https://kallithea-scm.org/).

------
akhilcacharya
I had used GitLab for Mailman but I hadn't considered using it. I'll probably
migrate off of Bitbucket thanks to this article.

~~~
sytse
Great to hear that!

------
mrmondo
As I've said before, we moved from GitHub to Gitlab and could not be happier.
Most of our stuff is internal and we mirror our open source code to public
repos. God damn it's good software - is there still room for improvement? Yes.
Are they improving it every.bloody.week? Hell yeah they are!

~~~
sytse
Thanks, we'll keep on shipping!

------
dham
> Do I have to tell you, it’s good for people with vision problems?

Actually light themes work better for me. I have astigmatism and light themes
open the pupil allowing me to see the text easier. With a dark theme I
basically just see line noise.

This might be a misconception of dark themes.

------
mamcx
Exist something like this but for mercurial (I use BitBucket. I mean something
to download private...)

~~~
marcinkuzminski
Check our [https://rhodecode.com](https://rhodecode.com) it supports git,
mercurial and subversion.

------
merpnderp
At work we'll probably be moving from TFS to gitlab. Phabricator looks nice
but gitlab seems more polished and simpler to use. But once we move to git we
will be easily portable and can switch easily if we regret our choice.

------
Heliosmaster
As another guy that uses GitLab, it's really great. You can see GitLab improve
every release, constantly. I don't even remember the last feature that GitHub
added, to be honest.

------
LinuxBender
I tried to create an account on GitLab.com. It said I needed to fill in the
Captcha. There was no Captcha. Tried on Safari. I will try again later on
Firefox.

~~~
LinuxBender
Worked on firefox after allowing gstatic. Email verification was rejected. My
mail server didn't like your mail servers TLS settings. I will try again
later.

~~~
sytse
Sorry but we need the Google Captcha to prevent spam. Can you please detail
what is wrong with our TLS settings in [https://gitlab.com/gitlab-
com/operations/issues/83](https://gitlab.com/gitlab-com/operations/issues/83)
?

~~~
LinuxBender

        lost connection after STARTTLS from so254-240.mg.gitlab.com[198.61.254.240]:35308
    

I have to register or sign in to post a comment. I can't register if I can't
get the confirmation email. :-)

~~~
sytse
Please email support@gitlab.com if you have trouble getting our confirmation
email.

------
amelius
I'm wondering if github and gitlab implemented their own version of git under
the hood, or if they just use the vanilla git everyone else uses on their
server.

~~~
lbo1
AFAIK github implemented Libgit2 (or are at least a major contributor), which
is an independent implementation. Am on mobile, so sorry for lack of sources.

~~~
sytse
With GitLab we sometimes shell out to git and we're using more and more Rugged
[https://github.com/libgit2/rugged](https://github.com/libgit2/rugged), a ruby
library that calls out to libgit2. For more information on our git calls see
[https://github.com/gitlabhq/gitlab-shell](https://github.com/gitlabhq/gitlab-
shell)

------
xufi
I'd like to maybe try this one day. Both hub are lab are great though and fill
different niches of mine

------
radarsat1
Is there a way to port publicly viewable github issues and PRs over to gitlab
automatically?

~~~
cpitman
When you create a repository you have the option of importing it from GitHub.
You'll have to authorize it to access your GitHub repositories, but then it
can pull over all of the issues that are part of the project.

~~~
radarsat1
The issues are public though, why does it need my authorization?

~~~
sytse
To use your API key, if we use a single one we get rate limited.

------
ioab
They don't have the octocat.

~~~
cjfont
They have a fox though, so that's cool.

~~~
typeformer
The GitLab logo is actually of a Tanuki (Japanese Raccoon Dog), but still kind
of like a fox, as in, it definitely has that scrappy, playful, spirit.
Certainly equally as cool as an Octocat.

------
jrcii
The only missing feature is mailing lists. What's a good solution for that?

~~~
sytse
Contribute it to GitLab! [https://gitlab.com/gitlab-org/gitlab-
ce/issues/4272](https://gitlab.com/gitlab-org/gitlab-ce/issues/4272)

------
coderKen
Have two repositories on Gitlab, no complaints so far.

------
fredgrott
github allows more than one private under paid plans..seems that author makes
attempt at comparing apples to oranges

------
musha68k
Please don't... Github is an _institution_ and the only thing replacing it
should be something equally _global_ but based on a new _protocol_ of sorts
enabling truly decentralized and distributed sharing and collaboration on a
higher interaction level.

But meanwhile, again _please_ let's not fragment needlessly - that's certainly
not something worth the price to pay for an (admittedly great) "alternative"
_service_ be it self-hosted or otherwise...

Edit: I'm strictly talking open-source projects here - Gitlab is a fantastic
solution for private repos!

~~~
kev009
No idea why you were down voted to oblivion, having a contrary opinion is not
grounds for that.

I also completely agree, newer Internet users don't understand that we've lost
a lot of the decentralized nature of the Internet. Usenet is a perfect example
where everything that is used instead is fundamentally worse. With modern
computers and better protocols and distributed algorithms a UUCP-like project
hosting facility would be really cool.

~~~
musha68k
:) protocols > services indeed!

There always will be a market for well designed implementations!

We do should look into new projects like keybase fs, ipfs and the likes to
think up a really new solution for sure - we probably still need to tackle
some more "basic" foundational solutions first though.

------
sandGorgon
I'm a rails guy and have run a consulting shop based on rails. But Im actually
a bit surprised (and impressed) that you distribute a self-installed piece of
software based on Rails (yes I have seen Omnibus and all the cool things you
do. As I said very, very impressive!)

I have personally lost many a "enterprise" contract because of the Ruby thing.
Not just that, but at the end of the day Java is very performant _with least
deployment effort_.

Which is why we became a JRuby shop first (and packaged JAR for distribution)
and eventually to Spring Boot and Scala.

I understand the value of Rails (my current startup is also built on that) -
but I'm wondering if it makes sense for you guys to bite the bullet and jump
to the JVM.

~~~
tangue
Why the downvotes ? Rails is a PITA to install, Docker might change that but
I've spent too much time fighting rvm, rbenv, old gems

~~~
kbutler
Try the gitlab installation, and speak to it specifically, rather than to
general Rails experience.

Gitlab install is fast and easy (though it didn't used to be). Gitlab has had
a hugely successful rapid increase in
usability/maintainability/installability.

