Hacker News new | past | comments | ask | show | jobs | submit login
GitLab 8.15 Released (about.gitlab.com)
246 points by EddieRingle on Dec 22, 2016 | hide | past | favorite | 115 comments



@Gitlab: The features are great but the interface setup is shocking. That whole video assumes you have a K-cluster going already, and is a maze of this-thing, that-thing, auth-thing, copy-thing, etc. Have you guys ever tried interviewing users who are new or maintaining a Gitlab instance over major version upgrades? It's painful.

The 'quick fix' for setup these days is supposed to be to use a docker image... but the docker image most people use is unofficial, the maintainer is swamped and has a policy of ignoring problems, and although it runs it doesn't work well with real IPs/DNS/SSL/etc. for common cases (eg. email setup silently fails for many and has for ages - see https://github.com/sameersbn/docker-gitlab/issues/596 and https://github.com/sameersbn/docker-gitlab/issues/1005 which I recently opened) and adds the docker-is-a-moving-target complexity issue to the potential user's stack.

Normally I am based in China. Given that Github access is not super fast or stable there, you guys have a great opportunity to take that market. I'd personally love to use Gitlab both for my own business and those I consult for, but I can't get past go with mail on real infrastructure, and experiences with upgrades to date have been terrible.

Just offering my own recent experiences as a point of reference.


Pardon me here, but I don't understand what you mean by "the docker image most people use is unofficial."

I was under the impression that everyone used the fully featured official docker image (https://hub.docker.com/r/gitlab/gitlab-ee/). We've been using this for over a year without issues now. Is there a reason you need the unofficial version? Does it do something different?


IIRC because last time I checked it had no comments/community around it and was until recently out of date.


The image Cidan referred to was last pushed 5 hours ago when we released 8.15 and should always be up to date. For more information about our official docker images see https://docs.gitlab.com/omnibus/docker/README.html

I've added a section to say that these images are officially supported with https://gitlab.com/gitlab-org/omnibus-gitlab/commit/26501d91...

If you experience problems with them please feel free to file an issue under https://gitlab.com/gitlab-org/omnibus-gitlab/issues (more than 1500 have been closed there already).

I suspect that many of the upgrade problems you experienced can be solved by using an official image.

I agree that the demo video we show is limited to a specific Kubernetes installation (OpenShift self hosted). In 2017 we plan to make sure everyone can use it, for details see https://gitlab.com/gitlab-org/gitlab-ce/issues/25986


should always be up to date

OK. I definitely remember running in to something that looked official but wasn't up to date (remotely) a few weeks ago. Perhaps it was this image, perhaps not. IIRC at the time I was judging only from the 'updated [time periods] ago' data in the docker hub webpages.


Mmm, I remember mishaps with updating but those were quite some time ago.

Anyway, if there is an urgent problem with those consider tweeting to @gitlabstatus to get our attention. I think it won't be needed since many people use them so we should be on top of them. The only package that is sometimes late is the non-docker package for the Raspberry Pi since it takes hours to build.


If someone gave me a bug report along the lines of "the image didn't work, but I don't remember which image it was", it would be ... bad.


Thanks for the honest feedback, it's genuinely useful for improving the product.

Out of curiosity, why use the Docker image over our Omnibus package? Omnibus is generally what we recommend, but if that's not good enough we'd love to know how it can be improved.


Even if I trusted it not to munge other things (doubtful), IIRC omnibus does not support my distro (Gentoo), and setting up another distro I have to (remember to) maintain just to support one application does not appeal medium term versus using a popular docker image which has done that for me already in a pre-tested fashion and should handle maintenance smoother.

Basically I'm at this point: 'what's the easiest self-contained box to run and maintain', with conditions 'I have an IP but it's not dedicated (ports 22/80/443 unavailable)' and 'there may not be existing DNS/SSL for this server but I can set it up' and 'SMTP from this IP is not desired/desirable, but I have an existing offsite ISP allowing relay with credentials'. This doesn't strike me as particularly weird, except that in the latter case Google is not an option (GFW'd from China).


I don't think your concerns are founded, I just deployed GitLab for personal use on a virtual machine with the omnibus image (gitlab-ce:latest) and it worked flawlessly. And since they released an update today, to upgrade all I had to do was:

    docker pull gitlab/gitlab-ce:latest
    docker stop gitlab
    docker rename gitlab gitlab-old
    docker run --detach --publish 60100:80 --publish 58432:22 --name gitlab --restart always \
         --volume /var/volumes/gitlab/config:/etc/gitlab \
         --volume /var/volumes/gitlab/logs:/var/log/gitlab \
         --volume /var/volumes/gitlab/data:/var/opt/gitlab \
         gitlab/gitlab-ce:latest
    
    # after verifying the new image works, docker rm docker-old; docker rmi [old image]. 
It took less than an hour to configure it for external SMTP relay, external auth with two factor authentication, etc.

I did just get started with it, but I have to say the omnibus install was fairly easy.


I tried the docker image for gitlab-ce just 2 days ago and had to exec bash into it and chmod a workhorse socket file to get it working. Glad they fixed it.


Great, I'm glad it worked for you. It didn't work for me and other people, as per the issues linked. When it doesn't work, there's no clearly defined debug path, and very little response.


Respectfully, it seems like you are using the wrong Docker image, and that's the source of your troubles. Others have commented similarly, and I think that you are too easily dismissing them.


I think you're right Aaron.

The Sameer docker image used to be the only way to run GitLab with Docker but we don't recommend it and it is no longer listed on our installation page https://about.gitlab.com/installation/ to prevent confusion.

Also see my answer in https://news.ycombinator.com/item?id=13243443


Omnibus makes a ton of assumptions about how many things you want bundled, as well as the monolithic configuration is daunting. I'd suggest breaking up into smaller containers for each service. No matter what container medium you choose, the philosophy of omnibus isn't something you want to 'containerize' as it is.


We run gitlab and the full config is 57 lines. A little more than half of those are comments or blank lines. This includes email and oauth. I would suggest not unbundling.


They could do both? Offer the separate parts in an easy-to-use way, and have the bundle re-use those parts.


Unless you're just super pressed for resources I'm not sure why you wouldn't just install the omnibus then disable the services you don't want.


We recently revamped our in-house deployment process of GitLab, and while we are certainly addicted to Docker Kool-Aid, the Docker image for GitLab just didn't do it for us. This is a few months ago, so my specifics would be a little rusty, but I remember it simply not working, spam-logging errors that didn't help me, and personally I find Docker images that try to run many-multiple applications inside a non-preferred design anyway. Contrasting that, the Omnibus installation worked absolutely without a glitch, so we went with that. Loving GitLab, though!


Is there a Omnibus package for Kubernetes (perhaps a Helm package?) I'd be very interested in that.

FWIW: I ran GitLab at my previous company (2yrs agoish) because GitHub was a non-starter for political reasons. We loved it! Keep rocking.


There is indeed a helm package, gitlab-ce.


Aha! I was looking for this recently. Doesn't appear to be on https://about.gitlab.com/installation/, which is where I stopped my search for it.


It's very new and still maturing. Pull requests and improvements welcome!


Thanks for making it Greg. I added it to the community installation methods section of https://about.gitlab.com/installation/ with https://gitlab.com/gitlab-com/www-gitlab-com/commit/c4ea6aa9...


I haven't tried omnibus but I'd vote for docker too after being spoilt by setting up and maintaining a Discourse instance. They've done an absolutely fantastic job in making installation and updates painless.


We have been using the official Docker image without any problems so far.


To be honest, the APT package is easy to configure, runs flawlessly and updates seamlessly.


I thought the same thing :) How did things get so complex :)


I love gitlab! We just deployed our review app deployment to Kubernetes (create a new subdomain in route53, create a new namespace in k8s, create all kubernetes manifests in that namespace, create ingress manifest, boom!).

Here's some thing I wish for gitlab:

1. On merge, run "stop_review" so that we don't end up with a lot of old review apps.

2. I wish you could take over https://github.com/sameersbn/docker-gitlab or offer something similar. I find it a little crazy that you have a single docker image for redis, gitlab, postgresql. There's multiple reason why we don't want to use this, but the simplest is: we already have mysql running (and feel no need to move to pgsql), and we already have experience in running redis.. I kinda like my containers to do 1 thing and 1 thing well.

Merry Christmas, thanks for this patch!


Glad to hear you love GitLab and are using the review apps https://about.gitlab.com/features/review-apps/

Thanks for the wish list!

1. Automatically stopping the review on merge makes a lot of sense. The issue for that is in https://gitlab.com/gitlab-org/gitlab-ce/issues/22191 and it got added to 8.13 if I'm not mistaken https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6669

2. As you know we already have official docker images with https://docs.gitlab.com/omnibus/docker/ so we won't take over Sameer his work. If you want to have separate containers for the datastores (totally a good idea) I recommend you use the Helm Chart https://github.com/kubernetes/charts/tree/master/stable/gitl... It has separate containers for Redis and PostgreSQL https://github.com/kubernetes/charts/blob/master/stable/gitl...


Hi maktouch,

1. Since the review apps is tied with a branch, as soon as branch is deleted the review app is stopped. This actually happening in above video. At the end you see the stopped review :)

2. You can use your own services. Sid did propose to use Helm package. If you look into Helm package sources you will see how they do it and following the same you get the same result on vanilla Docker.

Kamil, GitLab CI Lead


Participate in an Interview on Experience with Different Git Tools

My name is Angela and I do researches on user experience for different Git tools on the market. I’m kicking off a round of discussions with people who use Git tools. Ideally, I’d like to talk to people that sit on a team of 3 or more.

If this is you, I would love to talk to you about your experience with <using> Git tools, or just some of the pain points that are keeping you up at night when doing your jobs. 

I’ll just need 30 mins of your time, and as a token of my thanks to those that participate, I’d like to offer a US$50 Amazon gift voucher. 


If you’re interested, just shoot me an email with your availability over the next few weeks and we can set up a time to chat for 30 minutes. Please also include your timezone so we can schedule a suitable time (as I’m located in San Francisco). Hope to talk to you soon!

Cheers, 
 Angela Guo 378496625@qq.com


I'm curious how you guys build features for EE. Is it a completely separate Rails project you handle manually to keep base features in sync with the community edition?

EE is open source but requires a license. Do you just trust companies won't download the source code and run it. Do you have heartbeat code injected somewhere to ping servers that are running EE to homebase?

I'm thinking of starting a project, charge money but also open-source it. Curious what your strategies are, especially since the project is still greenfield.

Thanks!


>I'm curious how you guys build features for EE. Is it a completely separate Rails project you handle manually to keep base features in sync with the community edition?

It's the same codebase with some additional code. Every few days we merge CE into EE[1], which always ends up with some merge conflicts – though those are getting better as we learn to engineer around them – and its own problems, but it works pretty well. I think this is a great system, even with its drawbacks, if you want to keep the base product as FOSS. Just be aware of the problems you'll likely run into, and avoid implementing any EE-only features that will cause crazy merge conflicts.

>EE is open source but requires a license. Do you just trust companies won't download the source code and run it. Do you have heartbeat code injected somewhere to ping servers that are running EE to homebase?

It has a built-in system for uploading the license and verifying that the license covers the users of the instance. The license (as in the copyright license) says that users cannot use EE if they get around that. We don't have many cases of piracy as far as we know, and don't care too much. No major enterprise customer would realistically pirate software since that'd be a legal nightmare if they were caught.

>I'm thinking of starting a project, charge money but also open-source it. Curious what your strategies are, especially since the project is still greenfield.

Best of luck! It's awesome to see others try to go for this kind of model, I hope it works for you :)

Some others to look at: Sentry, Mattermost, and Code Climate.

[1]: Example of a CE-to-EE merge request: https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/991


>EE is open source

It is _not_. You cannot distribute it. That makes it not open source.


yeah, the term I'd use is source available? anyway, I agree with the idea that "open source" is a dirty term, an attempt to subvert the free software movement. But that is a battle for another day.

Someone else put it better than I could:

> Likewise a Source Available is not necessarily Open Source, but Open Source is necessarily Source Available.

https://haacked.com/archive/2006/07/26/CodeAvailableVsOpenSo... (requires you to accept github cert because https is difficult for some reason)

Blog github at https://github.com/Haacked/haacked.com


EE (Enterprise Edition) and CE (Community Edition) are two separate projects indeed. Before each release, CE is merged to EE manually.

We encourage you to start a project, try to monetize it and also open-source it. The benefits of open sourcing are huge. Take a look at some of blog posts about that:

[0]: https://about.gitlab.com/2016/07/08/7-myths-about-open-sourc...

[1]: https://about.gitlab.com/2016/07/07/trends-version-control-i...


Holy hell this is amazing! Gitlab all the way! You release often and there is always something awesome in there, I love reading your release notes.

One thing I find strangely lacking (seeing as you bundle it) is notifications from gitlab to mattermost when builds fail or issues/mrs are opened. Apparently I have to run some strange 3rd party application to process webhooks?


I'm not sure I understand why you're under the impression that you need a 3rd party application for that, as far as I know it's possible with just GitLab and Mattermost. If there are any confusing docs we need to improve I'd be happy to do so :)

Build failures can be sent to Mattermost using our Pipeline webhooks described here: http://docs.gitlab.com/ce/web_hooks/web_hooks.html#pipeline-...

And then the Incoming Webhooks in Mattermost described here: https://docs.mattermost.com/developer/webhooks-incoming.html


As a paying gitlab ee customer, we love to use gitlab. I just have one gripe with review apps. We would really like you to open it up with an API.

Allowing us to create the infrastructure outside of gitlab-ci and setting the reviewapp url/domain etc using the API would be extremely valueable for us, as we are stepping off of the gitlab-ci, but would very much like the UI interface upgrades review apps provides.

We are stepping off of Gitlab CI because of: * Only a single pipeline allowed per repository. We have a monorepo as we have a lot of small artifacts that make no sense to split out to multiple repo's and have to manage using gitsubmodules or having a separate code review process (we use merge requests a lot!) * Gitlab-ci's "stages" and not allowing dependencies on cross-stage is not helpful * No "skipped" status that can be supplied during the pipeline. E.g., we want to ignore changes to our documentation .


If you have specific functionality that is now only in the interface in an API we'd be glad to have a look. But it sounds like you want to replace functionality in .gitlab-ci.yml with an API, this would be hard.

Instead we would gladly word with you to make GitLab CI better so you can keep using it.

1. Single pipeline => I understand using a monorepo. But I don't understand yet why you need multiple pipelines. Does the pipeline work different depending on what file is updated?

2. Do you mean cross project pipelines? https://gitlab.com/gitlab-org/gitlab-ee/issues/933

3. Do you mean setting criteria for build skipping in .gitlab-ci.yml ? What would be an example criteria?

Since you are a paying customer feel free to work with our support team to have the features you need prioritized. We want everyone to be able to use GitLab CI.


Thanks for this feedback! At GitLab, we believe that work is never done, and we are always looking for things we can improve, in our CI solution as well! Let me address some of your concerns:

1. There is only one pipeline allowed at the moment (see issue about support for multiple pipelines: https://gitlab.com/gitlab-org/gitlab-ce/issues/22972), but you can use multiple builds / stages to usually achieve the same. We also plan to add ability to control status using exist code from the build (see https://gitlab.com/gitlab-org/gitlab-ce/issues/25738). You can also use our pipeline trigger API with environment variables to control what get executed.

2. That is true, we already did some backstage work to improve that. In the meantime it is possible to explicitly depend on builds from the previous stages to download all artifacts in subsequent jobs.

3. I'm not sure if I understand correctly, what you want to accomplish, but if `[ci skip]` is not enough, then status based on the exit code may be helpful as well.


I'd usually refrain from "+1" style comments, but you guys rock!

Its great to finally see some improvements in the interface, but its still rather far from being as user-friendly as GitHub.

I've got some very specific aspects in mind. Are contributions to Gitlab's interface accepted?


Thanks for your comment!

Contributions of any kind are always appreciated. We have a guide about contributing [0] that will help you in the process.

You can also create an issue [1] to let other people participate to your suggestions if you like.

[0]: https://about.gitlab.com/contributing/

[1]: https://gitlab.com/gitlab-org/gitlab-ce/issues/new


Can you share what these items are? I have used GitLab quite a bit and GitHub just a little, and I so far have enjoyed using GitLab much more. I had a hard time finding my way around on GitHub.

The main parts I've used in both are creating Issues and Merge Requests, and in GitLab I've accepted them and managed teams/projects.


Sure, some things off the top of my head:

- On the main project page, the file list/table cells have too much padding. The same project's file list, with 22 files, on GitHub fits on my screen comfortably. On Gitlab, the whole table sits at 928px in height. Reducing the top/bottom padding in cells to 5px, without a loss in usability, yields a much nicer 708px height

- The two panels above the file list (the branch, and the latest commit) could be streamlined and merged

- Frankly, the whole area with the project name and the buttons below is incredibly and unnecessarily convoluted. Some important links are grayed, some others are not relevant for every project (e.g. I don't need a contribution guide for my private project)

- A lot of links are indistinguishable from text


Hi chmin, thanks a lot for your suggestion. We will look into it. Please feel free to open an issue regarding that if you want. We are also considering about the line length in a file so that people find it more friendly to read. https://gitlab.com/gitlab-org/gitlab-ce/issues/13680. Thanks again for your suggestion :-)


We'd strongly recommend that you open an issue to discuss it first, but yeah, of course they are! :)


Are there notable projects or organizations moved to gitlab.com?

On top of my head I only know f-droid that is there. I use it for personal use and love it, would love if more projects moved away from github.com, especially open source.


Danger hosts their website with GitLab Pages[0], iTerm hosts their issue tracker there[1], the game Xonotic is hosted on GitLab.com[2], and then VLC[3] and GNU[4] both have their own instances of GitLab.

[0]: https://gitlab.com/danger-systems/danger.systems

[1]: https://gitlab.com/gnachman/iterm2/issues

[2]: https://gitlab.com/groups/xonotic

[3]: https://code.videolan.org/videolan/VLCKit

[4]: https://git.gnu.io/explore/projects


I talked about GitLab and how they can compete against GitHub in this past comment

https://news.ycombinator.com/item?id=11155293

and at the present moment, they are still pretty far from being able to convince notable projects to leave github.com for gitlab.com The biggest issue right now, is there is a measurable difference between gitlab.com and github.com, which is, it's much slower.

GitLab is working on this and I have no doubt this will become a non-issue in the future, but they still have to deal with the fact that you can't compete with being "as good as". Even if gitlab.com becomes as good as github.com, they will still have a difficult time, to convince others to leave github.com for gitlab.com

I guess my point is, since github.com is the incumbent, the only way that gitlab.com can become the next place to collaborate, is they have to make it clear, that they are better than github.com They can't strive for equality, since you can't compete with "as good as".


If they get to "as good as", they have the advantage of being open source. This could convince _some_ projects.


Note that gitlab.com runs on GitLab EE, their commercial product, which is not FOSS. This is why the GNU project hosts their own instance of GitLab CE for themselves.


Well, F-droid is a pretty huge organization in terms of user count and repo activity: https://gitlab.com/fdroid

Otherwise, you can see the most star-ed repos here: https://gitlab.com/explore/projects/starred

(I think more people should consider moving from github to gitlab or bitbucket, but for gods sake avoids googles new git site).


i think the killer feature of gitlab is still self-hosted instances. it makes it really hard to justify using github enterprise. as far as gitlab.com, i've toyed around with it on personal projects and it still has a very long way to go in terms of reliability and speed.


Wow, that is an amazing release. Seems you actually managed to complete your goal right before christmas! This whole year has been quite impressive, I can't wait to see what you will do in 2017.


Thanks! We are super happy to have completed our vision on Idea to production this year. We'll keep improving and innovating in 2017, you can count on that :-)


One of the things we'll do is to make sure everyone can replicate the idea to production flow, see https://gitlab.com/gitlab-org/gitlab-ce/issues/25986

I'm also excited about adding Prometheus monitoring for apps you deploy https://www.youtube.com/watch?v=NFPGtbQfL1A


I love how easy the integration with Openshift is. Does anyone have any resources to get a Openshift Kubernetes cluster setup?


Actually, it's incredibly easy, especially in tandem with CentOS Atomic Host. Here's my setup at work I just deployed last month:

osm01-03 - OpenShift masters, don't run anything other than OpenShift services (Atomic host)

osn01-03 - OpenShift nodes, actually run the apps (Atomic host)

osnlb - Load balancer for the master (CentOS 7)

oss - NFS server providing storage for OpenShift docker images (CentOS 7)

On your storage node make sure /exports is on a separate filesystem with adequate storage to store your container images, it will be set up automatically from there.

Once you have these couple servers spun up (You can skip the multiple masters + load balancer if you don't care about HA, though I recommend it) from a CentOS box you want to deploy from make sure you push an SSH key out to all the servers for root access then run the following.

    yum install centos-release-openshift-origin 
    yum --enablerepo=centos-openshift-origin-testing install atomic-openshift-utils 
    atomic-openshift-installer install
Walk through the installer, making sure you pick "OpenShift Origin" to install the upstream (non-commercial) build, say "container-based" for every atomic system you have, and tell it which are your HAProxy (load balancer) and Storage servers, plus what your default domain will be (I recommend using either a subdomain of your existing corporate domain, or buying a new one for openshift use). After you're done specifying your configuration it will generate an ansible playbook and stash it in ~/.config/openshift and start building your cluster out. Once it's done you just need to set up your DNS entries (whatever your master hostname is should point at your load balancer, then I recommend you add a wildcard DNS entry for whatever domain you chose and point it at all of your nodes). The last thing you'll need to do is configure authentication [1] as by default it will take any username/password combo, and setup the default builder images [2]

[1]: https://docs.openshift.com/enterprise/3.0/admin_guide/config...

[2]: https://docs.openshift.com/enterprise/3.0/install_config/ins...

Sorry for the wall of text, I spent two days figuring this out myself - but after a month in production my team is loving OpenShift and we've already deployed three greenfield apps on it. It's getting a lot more love than I ever expected, and I'm already looking at needing to give my node VM's more resources. Feel free to email me at the address in my profile if you have any questions.


Thanks for the write up. It sounds like a great setup.


Great! Thanks for the write-up.


As always, we're here for any questions and welcome feedback and other comments.


People mentioned that seeing the video made their jaw drop, they didn't expect such an integrated experience. I would like to know what people think, both good and bad. Currently the plan is to improve the idea to production experience every release to make sure everyone can replicate it https://gitlab.com/gitlab-org/gitlab-ce/issues/25986


I recently registered to try gitlab. I received unprecedented large amounts of spam from them daily with no unsubscribe button. I finally emailed them to stop the spam and they did but not completely I received more but had unsubscribe this time. Unsubscribed so lets see what happens. One more spam and I will close my account and never try them again

GitHub is great, does the job incredibly well, doesn't get in the way and have never been spammed (tip for you gitlab here).

[update] Please don't forget to downvote me for giving honest feedback :-)


I'm curious what kind of spam you were receiving. I'm not sure I've ever received unsolicited email from them.


Marketing stuff. And I am not against them marketing their features but it should have had an unsubscribe button and sent in moderation in my opinion.

Interesting that I get downvoted for giving honest feedback. I would have thought it would help them improve seeing how different marketing ideas impact their users.


Gotcha - interesting. Just as another anecdote - I signed up ~8 months ago and have never received any non-transactional (marketing) emails.


> Interesting that I get downvoted for giving honest feedback

My hunch is the "GitHub is great" line, it feels a bit unnecessary and somewhat shill-y.


Or maybe downvoted because they do have an unsubscribe link? Every email I receive from GitLab has an unsubscribe link at the bottom.


Hey, I do marketing at GitLab, and this is definitely not something that should be happening. If you want to email me at mitchell [at] gitlab [.] com with the email that you signed up to our service with I'd love to look into why you were sent so many emails.


Hi, thank you for bringing this to our attention. If you wouldn't mind getting in touch with Mitchell (commented below) or myself at jennifer [at] gitlab [.] com, we can look at your particular situation.

To share a little background, our marketing automation system does have a limit to the number of emails a person can receive: max of 2 per day; 5 per seven days; and no limit to operational emails. Operational emails are things like a signup confirmation, EE trial license key & initial download instruction.

There are a certain periods of time that have the potential to create a "perfect storm" of emails to be sent/received in short succession.

Example of "perfect storm": If a person signs up for GitLab and download an EE trial the day or two before the bi-weekly newsletter email is sent, they could receive 3 operational emails and 1 marketing email in the first 24 hours.

Please let me know if you have additional questions or if I can explain something more clearly.


What can Gitlab possibly mail me 5 times per week?

I don't understand why this is not max 5 times per month.


Thank you for your feedback. We work very hard not to bombard the community with messages and actively work to balance our marketing, information, education and operational emails.

The 5 emails per seven day limit is not something we expect to ever utilize but allows for flexibility in our communication strategy.


We decided we should look into improving it, you can follow our progress in https://gitlab.com/gitlab-com/marketing/issues/740


That's really strange; I received an email today, with the previous emails being on the 8th and on Nov. 22. What is the contents of the emails, and what address are they from? Are they duplicate emails? Sounds like someone impersonating GitLab.


taking a quick look:

community@gitlab.com news@gitlab.com kris@gitlab.com

All marketing their features and help to get started. Like I said nothing wrong with sending this kind of email just over a certain period in moderation.

Everything in life is relative isn't it :-)


Thanks for the addresses the emails came from. I've shared it with our marketing team.


Oh man, oh man, global hooks! Thank you!

The other features are awesome, but this is the one that will get us to upgrade right now! We use dozens of repositories, and it's been a pain to manually configure and update hooks.


Glad to hear that, and thanks for posting. Happy holidays!


This may be a silly question. How did Github manage to burn 66M a year while Gitlab manage to be open source, offer an Free GitLab.com Hosting and continue a Rapid pace of improvement in multiple domain?


Probably by concentrating more on the product than on politics.


They got fat and lazy. The competition wasn't there previously. Bitbucket, Gitorious etc just weren't up to scratch so Github was a defacto monopoly for cloud hosting of git repositories.

The gitlab came on the scene, shipped a Github replacement and then some. Is shipping features in 6 months faster than Github did over the past few years.

Github have woken up though and started shipping features again.

It's good to have competition. At least, for consumers.


Thanks for another update! I’ve been running gitlab-ce for over a year now for my sideprojects and random small backups. I don't use any of the more advanced features like ci, but the core has been really great to use.

For reference, i'm running gitlab-ce on a 2 core 2gb vm with 8gb disk and except for one out of memory error about 6 months ago it has been running great for a single user. For more serious use i'd give it way more resources, but for personal use it's humming along perfectly.


Thanks for posting, glad you're happy with the update.

2GB for a single user should be enough. To prevent the out of memory error since using the Omnibus package and configuring 1 or 2GB of swap space if you haven't done so already.


This is nice and all but what about page load times? It can have all the bells and whistles but if you have to wait a minute for just one page to load, it's unusable.


We've spent quite a bit of time this year improving performance, GitLab.com is still slower than it should be but it's a lot better now than it was in January. Self-hosted instances that meet the recommended specs are already fairly performant, though we're always working to improve things regardless.

As mentioned in the blog post, this release we decreased page size a lot (from 1800kb to 718kb for a given Merge Request).

We're also working on moving to our own infrastructure, the reasoning behind that move is described here: https://about.gitlab.com/2016/11/10/why-choose-bare-metal/

EDIT: Strike that, we've decided against moving to bare metal for now due to the complexity. I somehow missed that decision.


Don't know exactly why you decided against moving to bare metal, but IMO you definitely should. We've got tremendous improvements moving to metal. I also can't recommend OVH enough. Best price on market plus great hardware and uptime. Technical support isn't the best but you shouldn't need it anyway.


I also work at GitLab on a non-infra team. Here is Sid's explanation:

https://gitlab.com/gitlab-com/infrastructure/issues/727#note...

I, personally, was apprehensive of going to bare metal for most of the reasons that Sid lists in the above message, and I think that making the app just _better_ is where we should focus before we try and run to pure hardware to solve the problem.


Thanks for the link. I understand the rationale, it's definitely not a simple decision, but if these improvements can be made at the application layer then by all means go for it.


Yes, we're going for the application layer improvements. For our work there please see https://gitlab.com/gitlab-org/gitaly


I look forward to seeing the open source libgit2 storage backends :)


This probably sounds like a strange comment/question, but one of the reasons I haven't moved over to gitlab is that I know that it is unlikely that I will every be a paying customer. I actually don't mind that much about the performance issues (because I really just want cloudy git storage), but I don't like to take something for free unless I know the person giving it really wants to give it...

So as strange as it sounds, are you happy with people like me moving to GitLab even though it may compound your performance problems?


We're very happy with people moving to GitLab.com. We just want to warn them that it will take us time to sort out the performance problems.

And over time we'll start monetizing it more, see https://about.gitlab.com/gitlab-com/#free-forever for more information.


Thanks for that. Your link was actually useful because I didn't realise that you do builds as well. It is entirely possible that at some point this will be useful to me, so maybe I will become a paying customer after all.

And if I can just say, the more actual services you add to your system (as opposed to SaaS features), the more likely I am to become a paying customer. For me, I really value free software. I'm not so interested in paying for proprietary SaaS features, and receiving free services. I'd much, much rather pay for services and use free software.

Whether you can build a business around customers like me, I don't know, but I just wanted to make sure that you know there are at least some of us out there.


Networking effects are serious stuff. If you use it, you’re more likely to recommend it to others—or for public stuff, others will see you using it—and then they’ll start using it. And some of them will pay.


Exactly, free users can create familiarity with your product and awareness of your brand. We have a section about how to overcome the network effects https://about.gitlab.com/strategy/#sequence


It's a bit better but still extremely slow (didn't try on premise). We're still using it instead of github because of the CI though


On-premises should be fast. Glad to hear you like CI. We're working on improving GitLab.com in https://gitlab.com/gitlab-org/gitaly/


I love the work that GitLab is doing, though I'm personally using Gogs/Gitea since it's much much less resource consuming.


Plan meets final execution, love it guys and gals, great work yet again, we upgraded today without a hitch, within 30 minutes I had devs making positive comments in chat about the upgrade. Thank you again for all your hard work and the passion that drives that.


Thanks for leaving a comment Sam. Glad to hear the upgrade went smooth and people are happy. People that experience problems are more likely to let us know about it so we greatly appreciate your comment.


and just upgraded to 8.15.1 flawlessly :)


Yay! And we got some great news coming out in the next few minutes: https://gitlab.com/gitlab-com/www-gitlab-com/merge_requests/...


Gitlab has too many downtimes for upgrading. When I got a failed push I was saying: Oh gitlab has a new version... :meh:


The downtime for upgrading is annoying. We're trying to get to a point where the database migrations don't require downtime. But the deploy of 8.15 caused 40 minutes of downtime, this is not acceptable. For the post-mortem please see https://dev.gitlab.org/gitlab/organization/issues/1082


Oops, that is not a public link. I've made adjustments to our handbook to move it to GitLab.com so it can be public https://gitlab.com/gitlab-com/www-gitlab-com/commit/7fc274a1...


We have a great deal of repos on our GitLab private server and even a major upgrade only results in 2 minutes or so of downtime.

What spec hardware are you running this on?


I think this user meant the downtime on GitLab.com for upgrades. Self hosted installations indeed should be fast.


Damn, Gitlab always crushing it.


Great stuff! One thing that's been broken for me for a while now: Raw links. I just get an empty response. It's kind of an important feature for me (and I'm sure others) so would love to see it fixed.


I don't understand what you mean by that. Can you create an issue about it [0] so we can discuss it and fix the problem (if applicable)? Thanks!

[0]: https://gitlab.com/gitlab-org/gitlab-ce/issues


When you're viewing a source code file, there are links to Raw, Blame, History, Permalink... The Raw link is broken (for me). I can create an issue.


Yes, please do file an issue with what you encounter, because I can't reproduce it.


can you please create an issue and/or paste the issue here?




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: