GitLab is open core, GitHub is closed source (2016)
about.gitlab.com
about.gitlab.com
I have 1400+ projects and more than 700 users in 3 geographic locations using my server. backups with ruby fog libraries included in gitlab are taken once a night and im expanding the CI presence to include a kubernetes cluster. In short, Gitlab is worth it if you have the resources to deploy.
If not, gitea is a great alternative as well. https://gitea.io
Unfortunately, I haven't seen much improvement on the design side. While their company has invested in design resources, it feels like every designer is focused on a specific feature. When you group those features into a page (like merge requests) you get this jumbled mess.
Luckily after using the product for 3 years you start to have muscle memory of where things are but overall the design severely lags Github's.
"While their company has invested in design resources, it feels like every designer is focused on a specific feature. When you group those features into a page (like merge requests) you get this jumbled mess."
Thank you for the honest and direct feedback. We work together as a team and try to keep a holistic view even as we iterate on specific features. We know we can do better here and are actively working to make things consistent and understandable. We have opened several epics dedicated to this, you can see them here: https://gitlab.com/groups/gitlab-org/-/epics?scope=all&utf8=...
Also, for me, GitLab's heavy reliance on JavaScript disqualifies it as a serious competitor to GitHub.
How in the world using JavaScript makes a project less serious. Although Gitlab use mostly use Ruby and Go. JavaScript is used for Web UI only like most companies.
If you're wondering why someone would feel this way, the reasons vary from person to person, but perhaps the best reason is that a site that becomes nonfunctional when client-side scripts are disabled puts itself at odds with basic web security precautions.
To me it sounded more like "I can browse GitHub without JavaScript just fine, but GitLab doesn't even display the README, even though I'm using the exact same settings".
It's both a user and UX problem. It's like when some part of a website's functionality is only available through Flash.
You know some (nowadays "most") people will have it disabled, and you're indirectly saying that you don't care about those users at all, which is not a bad thing.
It's the users' fault for not enabling Flash, sure, because they're not your target audience. But whether you provide a good UX for your non-target audience or not, it's your fault. And again, you're not obligated to accommodate those users, but that doesn't change the fact the you could give them a better UX but chose not to.
So, from this you can know that the users GitLab cares about are only a subset of the users GitHub cares about.
WTF
EDIT: did not notice post was from 2016. Has nothing to do with Microsoft buying Github.
GitLab (not self-hosted) has constant deployment/stability issues. They do an update and sometimes GitLab is down for several hours.
This is not a huge deal for me, as I can just push my code later.
But the main concern I have is that recently they've just removed some free features in order (I guess) to force people to pay.
Features removed (the only once I've noticed):
- Merge requests: squash commits feature
- Push rules: make sure users do not push commits with non-Gitlab user emails.
- Protected branches: allow certain users to push/merge, not a whole role.
There was no email notifying about this changes, it just happened that I've created a new repo, and then noticed some stuff missing.
EDIT:
Since this got traction. I've started digging to see the differences between repos. I have one group that is under "Early Adopter" plan, which has all the features mentioned. Recently I've created a new group, which went under "Free" plan, and this group does not have features mentioned.
I wonder why the "Early Adopter" plan is not carried over to my new group.
EDIT: From Gitlab blog (https://about.gitlab.com/2017/09/01/gitlab-com-paid-features...):
> For existing users on the Free plan, we've created a special Early Adopter Plan for you. This plan has all of the existing features available in our Silver plan, with the exception of additional CI minutes or premium support. Any group or user account created before September 1st will be put onto this plan for a year for free. While we will not add new paid features to this plan, you'll continue to enjoy powerful features, like multi-project pipelines and canary deployments, for the next year. After 12 months, you will get rolled back to the Free plan. You can upgrade at any time.
Still personally feels like they're taking away free features, but just giving me a year to enjoy what I've already had.
Did you report it or ask why these things were happening? It might be worth getting an official answer.
I can still do this as a free user. It looks like you just have to do it within the "edit" form, or when you create the merge request. https://i.imgur.com/70k53xr.png
I don't use the last two so I can't speak about those, though.
Note: I'm assuming you mean the hosted version at gitlab.com
EDIT: I use gitlab.com
I did some work with libgit and rugged and said to myself that I was shocked Github was open-sourcing such a core competency...these libraries make it pretty easy for an average web programmer to build their own Github.
Github has been pretty damned generous to the open-source community, and it’s sad to see a fast-follower project use this kind of rhetoric successfully.
"""GitHub very actively contributes to open source themselves, including many contributions to Git and Ruby on Rails, and releasing libraries and applications like libgit2, Atom, and Hubot. Also note that we build GitLab with software that GitHub open sourced such as libgit2."""Here's the truth that so many seem to be in denial about: it is "closed source" companies like Google, Microsoft, Facebook, IBM and Oracle that produce the overwhelming majority of high-quality open source software. It's not even close. Over the last ten years these companies have given away billions of dollars in value in the form of open source software. These companies have done much more for open-source than GitLab and their buggy Javascript ever will.
why are none of the popular open source hosting providers fully open source? that's the least you'd expect of such service!
wikipedia can do it after all, so it must be possible!
https://news.ycombinator.com/item?id=12131844
But closed as dupe due to another similar company blog post on the front page.
[1] https://medium.freecodecamp.org/the-top-contributors-to-gith...
a.) A huge part of GitHub's value is their default-ness. Anybody can build a website UI to git, although it is a lot of engineering work. Gitlab and Bitbucket are somewhere in that equation.
People uneasy about MS are all over the Internet talking about moving off of GitHub today. MS announcing that they are open-sourcing GitHub would instantly evaporate a lot of that doubt/resentment/NOFUCKYUOM$!!!!URRRGH.
b.) They could also open-core it, not totally open-source it, just like GitLab. Thereby keeping basically all of the more-lucrative enterprise business (that's probably way more comfortable with Microsoft anyway).
So, literally not open sourcing it, which defeats the purpose.
For that reason, they have a strong incentive to keep people happy and on github, and they have a huge incentive to make it easy to deploy from github to azure with a single click or something similar.
They don't lose any customers by open sourcing it. Nobody's going to use GitLab if they can just download GitHub, and companies will still pay for Enterprise because they still need support for their massive investment in GitHub's extended features.
(By which I mean everything whiny MS-skeptics have said today (myself included).)
It would be a knockout PR move, suddenly sucking all the wind out of the sails of all knee-jerk-antiMicrosoftism surrounding this acquisition.
Satya, bro, you should really take a page out of Apple's playbook, and announce right now that you are going to.
(That way, whether you really do[1], or you don't[2], most people won't remember the idea anyway...)
[1]: https://swift.org
But there was some skepticism, because Steve Jobs had previously announced they were going to open-source their FaceTime technology so non-Apple platforms could adopt it and it could become a cross-platform communications system... but they never did.
Both announcements got people excited, though.
EDIT: Okay, my bad; I stand corrected. I remembered him saying that in 2012, but I googled it after lowtolerance disputed my claim, and what he actually said was, "We’re going to the standards bodies, starting tomorrow, and we’re going to make FaceTime an open industry standard.”
They won't, though. They won't open Windows or Office either.
But windows must be a colossal mass of who knows what at this point. I'd be embarrassed to open that cupboard for all and sundry to inspect. And likely a double edged sword in terms of security.
The idea - in any form - really does make one think, and kinda hard. The world would indeed be a very different place. I wonder what kind of innovation such a move would stifle?
Hmm, maybe superscalar/moonshot-level competition would be defined by and buoyed by 10-year disclosure! That would be kinda fun...!
Regarding Windows, those who poked around the Win2K and WinNT leaks regarded the code as reasonably well-written, so there's that. The Windows Research Kernel is somewhat more straightforwardly accessible; "wrk-1.2" will find innumerable copies rehosted on GitHub.
Regarding security, yes, it would be a payday loan. The NSA tool leak had some pretty old things in it that still did a fair chunk of damage.
This is not a case of Red Hat EL vs Oracle Linux. Microsoft has a mean enterprise sales machine and it's huge. All those Microsoft sales folks want to hear from a competitor is "oh, by the way, our enterprise SCM offering is based on a Microsoft solution".
I mean--I used to use Skype all the time, but now I use something else. If MS breaks Github, there are options.
They use it to manage issues, wikis, releases, orgs & commit permissions, etc. Some of that stuff is easier to migrate than others...
Obviously there are few if any guarantees here, but if Satya is going to find a way to open source all or most of GitHub, placing Nat Friedman in charge is certainly a sign.
GitLab should treat GitHub as S3 and copy everything. I don't mean the git part, I mean the GitHub API bits that run on top.
By "code hosting" I mean that most places say "we support code hosting" but in reality their systems are only setup to work with/use github.com; the domain at the very least, and possibly the API on top of that. Now places are going to have to generalize a bit, at the very least by thinking of multiple domains.
There are undoubtedly going to be tiny differences between how gitlab handles things; those will surface over time. They probably won't make headlines, but they'll cause tiny localized headaches.
As for S3, I mean that the GitHub API (issue tracking, etc) is all non-git proprietary stuff. GitLab should copy that so people's workflows Just Work™. I have no idea if they've already done this, I'm sure they've considered it.
Github is more a service than a software, you need tons of components to make it work (Elastic Search, a DB, haproxy or nginx, a lot of ruby, a few C/C++ libraries, a few python libraries, etc) it's a big beast.
I know they provide VM images for Github Enterprise, but IIRC, it was quite a big beast, requiring at least 16GB of RAM a fast CPU with many cores and a large disk last time I looked (3 or 4 years ago). And there was a lot of stuff in that image.
If I had the source code, I'm not sure I would be able to properly deploy it and maintain, even with some documentation. Too many moving parts. And I feel a lot of sysadmins would be in the same situation.
There are some services that open source there code. Travis-ci is the one I've in mind, yet I don't know of any deployments outside of travis-ci.
As many of you know, I am a huge proponent of open source and the collaboration economy.
I have put my money where my mouth is by reinvesting over half a million dollars from our startup company’s revenues into building the open source Qbix Platform, in the hopes of leading a revolution in all SAAS software, including the stuff where you need profiles, permissions, collaboration, notifications, realtime and social features on top of whatever you’re doing (git, editing a document, planning a trip).
https://m.youtube.com/watch?v=pZ1O_gmPneI
Having built v1.0 recently, we began making backwards compatible changes to eventually turn the Federated model (communities = landlords) into a permissionless, end to end encrypted and secure model for everyone. It may take us another year:
We are even making our own browser because the current browsers don’t have all the features we need to pioneer the whole vision:
https://projects.invisionapp.com/m/share/TKHYMVSJNW2
BUT here is the question I have. What is the best way to UPDATE the software on the back end?
We want this thing to be secure. Discourse, Wordpress et al tell you about updates. That’s fine but how do you actually install them? By entering a password into a web interface you can get the web server user to replace all the core files of the installation? Isn’t that a vector for serious attacks?
All the attacker has to do is somehow get your password or password hash, and it’s game over. They can send the right request to do arbitrary code execution.
On the other hand, if a developer signs the new payload, this may mitigate things. It is what app stores do.
Still, how do back ends get upgraded in self hosted open source software? In SAAS you just don’t worry about it. This is one area where we could use some professional consulting :)
GitLab has the Omnibus packages. We build it for few major linux distributions and you can get the package from here: https://packages.gitlab.com/gitlab/gitlab-ce (you can also add it as debian/rpm source, see installation).
Upgrading is a matter of `apt update && apt upgrade` and checking for eventual configuration changes/deprecations in `/etc/gitlab/gitlab.rb`. If you read the release note posts, upgrade instructions are always on the bottom of the page.
All packages are GPG signed, so you can check for tempering. If you don't trust our builds, you can fork our omnibus-gitlab repo and trigger a build on your own hardware.
Gitlab is really an amazing piece of software and We would like to have all the Organization on Board to handle Everything alas Redmine
It's the only thing missing in our criteria or use case taking into account that Gitlab is not a software for the whole Organization and more oriented to software development.
But adding a pair of things, it can be of use to all the departments in an Org
I've used it a very little. They've unfortunately copied the terrible workflow around github "pull requests", except made it even more confusing. The rest of it looks reasonable.
- What are the code/feature differences between CE and EE?
- Does GitLab EE have a test VM version like GitHub does?
Each of those non-free features should be a link to a video. Possibly even the same video, with a time/position key.
If you look, the most embarrassing thing about Microsoft is that they pretend to be embracing open source under the new CEO, yet their entire WSL joke aimed for running linux apps on Windows is not open sourced. There are numerous WSL bugs, there is an official github repo for WSL there but there is no WSL source code you can read.
Maybe for Microsoft Open Source is still considered as a cancer?
That being said, I wouldn't be surprised to see a larger open sourcing effort at Microsoft in the coming months/years. Let's hope they do it better than Oracle.
It's basically their May 2017 release plan for VS Code 1.24. Fully public.
My guess is that they're preparing some major announcements, I think at some point Windows will be Open Sourced and the consumer editions will be free. Basically we'll all be beta testers for the Pro and Enterprise editions. Which is not half bad, if they ramp up QA a bit.
This is not the Microsoft of Balmer where Linux was called a cancer. Under Satya Nadella the company is serious about providing the best office and cloud products regardless of what OS you use.
Then I realized that the COM ports are not routed into WSL. I need USB-to-RS232 converters to interface with our hardware. Of course, there is a web of contradictory blog posts and announcements when that feature will be finished - one post stating if I upgrade to Creators Update MVP Edition 120394782034785023845 Build 23904782390475 or later, I can use the feature! It took me 1h to find out what version and build of Windows I had, and 1 hour to install the new Creators Update, and 1h to reinstall WSL - and guess what, the feature was absent. What a clusterfuck.
So, COM port access... I don't see that being hard; I envision it as boring API-wiring, since RS232 has been standard since before Windows and Linux existed, so it's likely the code's generally similar.
But in terms of high-level support, RS232 is primarily industrial-class, with a long tail of developers and workstation uses trailing after it. Industrial immediately means complex SLAs and - nooooo - industry certifications and the like. I don't think MS wants to invest that much into WSL.
With this said, a bit of poking around found https://blogs.msdn.microsoft.com/wsl/2017/04/14/serial-suppo..., from last year. Are you on Insider Build #16176 or later?
I'll leave the middle one, but c'mon there is nothing close to VS and the open alternatives to Office are not in the same ball-park.
Similar for SQLServer - Windows shops kind of default to it.
VS is the exception.
If you mean GitLab Hosted is slow? Well it's probably getting hosed and that's understandable. I did find that GitHub was slower for us though and had far less features.
Today it's the fastest it's ever been. <1 second to load.
You know what is also open source? Git. I am not sure what the value is for having an open source clone of Github. Repositories can be changed in seconds thanks to git. So unless people are actually afraid of Microsoft reading private repos and can’t afford Github Enterprise, than I fail to understand why it matters that Gitlab is “open core.” Site reliability is far more important. I have never cared to look at Github source code. What for? It’s a utility for me like Dropbox or iCloud. GitHub and Github Enterprise have always worked great for me; as long as that continues to happen, why would someone like me care about Gitlab? Can anyone provide a specific benefit of Gitlab over Github? At the end of the day, what’s the value proposition?