News for hackers. Stuff that matters.
Re:Announcing new tools, forums, and features by markdog12 on Wednesday September 14, 2016 @03:17PM (#12500322)
> I don't really quite understand all the love of GitLab

- Open Source

- Free private repos

- Free self-host (edit to add "Free")

- Everything in one spot (repos, ci, review, coding environment, etc...)

Re:Announcing new tools, forums, and features by bentlegen on Wednesday September 14, 2016 @03:42PM (#12500552)
> Open source*

The Enterprise edition features[1] are closed source, and these aren't strictly "enterprise-y" features like SAML authentication. It includes plenty of "basic" workflow features found on GitHub:

- Rebase merge requests before merge

- Use fast-forward merges when possible

- Create templates for issues and merge requests

- Display merge request status for builds on Jenkins CI

[1] https://about.gitlab.com/features/

Re:Announcing new tools, forums, and features by Nimimi on Wednesday September 14, 2016 @03:58PM (#12500707)
Take a look at Phabricator. It's a former Facebook project and been battle-tested at very large companies for years now. Huge open source projects like Blender, Haskell, Wikimedia and LLVM use it since it's the best open source code review tool and issue tracker. Wikimedia had a lengthy decision process and thoroughly vetted the alternatives.

It has many enterprise features including code ownership, issue templates, and a Gerrit like, sane code review workflow. You can fully integrate it with your CI tool and it even displays coverage results inline and such.

Ask me anything about it :) I'm not affiliated with it but am an experienced user.

Re:Announcing new tools, forums, and features by bentlegen on Wednesday September 14, 2016 @04:54PM (#12501129)
I used Phabricator at a former employer, and it was one of the best software tools I've used. I'm always flabbergasted that it doesn't have more mindshare, especially when it's used internally at Facebook.
Re:Announcing new tools, forums, and features by vacri on Wednesday September 14, 2016 @08:08PM (#12502358)
I haven't seen it running yet, but just from reading the features page, I'm already a fan

https://www.phacility.com/phabricator/

Re:Announcing new tools, forums, and features by rtpg on Wednesday September 14, 2016 @07:51PM (#12502257)
it's either self-hosted or at least $20/user/month. This alone makes it a bit of a hard ask for smaller companies at first, even for just kicking the tires.
Re:Announcing new tools, forums, and features by aidenn0 on Wednesday September 14, 2016 @11:44PM (#12503242)
It's worth noting that the first 30 days are free, and all 3 source control systems it offers have fairly painless synchronization, so there's low risk IMO.

On top of that it was really painless to install locally. I had it setup in under an hour, and that included my first time ever setting up my webserver with php, and first time configuring a mysql instance.

Re:Announcing new tools, forums, and features by jsmthrowaway on Wednesday September 14, 2016 @07:51PM (#12502262)
Phabricator is also pretty amusing in terms of UX (by default), which is helpful when dealing with things that tend to anger folks -- like spirited reviews. I've often wondered if the sense of humor is half fun, half intentional in terms of psychologically making tedious work better for all involved. Even if accidental it's a nice thought.

Based on my experience, Phabricator has some quirks but is quite solid, and the well-designed command line arc workflow would please folks who refuse to open a Web browser.

Re:Announcing new tools, forums, and features by aidenn0 on Wednesday September 14, 2016 @11:34PM (#12503209)
Even the configuration option for turning that off is amusing ("Serious Business" IIRC)
Re:Announcing new tools, forums, and features by chrizel on Wednesday September 14, 2016 @04:39PM (#12501025)
I'm evaluating GitLab at work currently - primarily for its code review features and really like it. Read a lot about Phabricator yesterday as a possible alternative, and am considering testing it.

I wonder how it compares to GitLab. Is it possible to set up protected branches, where I can say, only users X and Y are allowed to push to the master branch? Can I do a code review and then finalize it when I'm finished and does the author get notified with a summary like the new GitHub code review feature? Because currently in GitLab the author does get a notification email for every line comment I make, which is also not really the perfect way of doing it.

I already know that Phabricator squashes the changes into one commit, I think I can live with that. (because it promotes small code reviews) Does Phabricator have any problems with git rebase, where I'm refreshing a feature branch with the most recent master state? What I really like about the merge/pull request workflow of GitLab is, that multiple developers can work together on one feature branch while a merge request is open and can be used as a discussion platform for the changes - is this possible with Phabricator?

Also I'm wondering how solid the issue tracking is, and if the project workboards can compete with Trello. Can it be used by non-developers without giving them access to the code?

Looking forward to test Phabricator tomorrow.

Re:Announcing new tools, forums, and features by superuser2 on Wednesday September 14, 2016 @09:35PM (#12502707)
>Is it possible to set up protected branches, where I can say, only users X and Y are allowed to push to the master branch?

Yes. I recommend (and my employer uses) a Herald rule that admits pushes to master only if the changes are in an approved Diff (unit of code review). This way you get an enforced 2-man rule, but anyone besides the author can approve the change.

This is currently impossible with Gitlab AFAIK, and is the main reason I won't use it.

You can also configure Herald rules to add blocking reviewers to other people's Diffs based on arbitrary criteria (i.e. touches X file and it's a Tuesday). A Diff cannot be considered approved until all blocking reviewers have signed off.

Reviewers can also be groups, so you could say, for example, changes that touch Y file must be reviewed by Security, but any member of Security can sign off.

>Can I do a code review and then finalize it when I'm finished and does the author get notified with a summary like the new GitHub code review feature?

Yes, everything you do on a Diff is batched and happens all at once when you click "Submit" at the bottom. Inline comments, the free-form text box, and the action all come as one email.

> What I really like about the merge/pull request workflow of GitLab is, that multiple developers can work together on one feature branch while a merge request is open and can be used as a discussion platform for the changes - is this possible with Phabricator?

A Diff is really meant to be an individual's small, well-defined contribution. Multiple people submitting code to a one diff can get messy. This would be better modeled as many diffs.

You are allowed to land diffs against branches other than Master, however this gets messy. It is not a first-class use case. My employer does not collaborate on feature branches; instead we land half-finished features into master (and production) disabled by feature flags.

It is NOT a merge/pull-request workflow. It treats Git more like Subversion; Phabricator is a very sophisticated alternative to emailing patches around before SVN committing them (basically the equivalent of landing).

>Also I'm wondering how solid the issue tracking is, and if the project workboards can compete with Trello.

Issue tracking is totally solid, very configurable. Project workboards consist of tasks/issues, which are much more expensive to create than Trello cards: you fill out a pagelong form, pick type, severity, owning team, title, description, etc. vs just free-forming a title. However, you can drag tasks around the workboard just like Trello and it looks pretty similar.

>Can it be used by non-developers without giving them access to the code?

Yes. Permissions (and approval flows, and notification rules) are very configurable. Phabricator is well suited to a large organization with rules, but this suitability doesn't carry too much overheard.

I don't think you could collaborate on issues with customers. Nontechnical people in your company, though, totally - we do that.

Re:Announcing new tools, forums, and features by aidenn0 on Wednesday September 14, 2016 @11:42PM (#12503235)
> It is NOT a merge/pull-request workflow. It treats Git more like Subversion; Phabricator is a very sophisticated alternative to emailing patches around before SVN committing them (basically the equivalent of landing).

Due to popular demand, they are adding some tools to allow merge/PR workflow. That being said, it was not stable last time I checked (~6 mo. ago), and it will probably take a while, if ever, for it to be as good as what's already there for Differential (the current code-review/landing system).

That being said, their existing tools are really good, and the fact that you are not married to a single VCS is really nice. You can have some legacy SVN repositories and be fine, and use the exact same interface for code-review and landing as in your shiny new git repositories. Prefer hg to git? No problem. Have some complicated gitolite setup you don't want to bother migrating? Phabricator works fine even when not hosting the repository.

Re:Announcing new tools, forums, and features by hiou on Wednesday September 14, 2016 @08:41PM (#12502533)
Phabricator is awesome. It felt like it was more for experienced developers or larger organizations when I was using it(in a good way). Something to consider depending on your team.
Re:Announcing new tools, forums, and features by nzp on Wednesday September 14, 2016 @09:16PM (#12502637)
FreeBSD has been using it too for a few years now. https://reviews.freebsd.org
Re:Announcing new tools, forums, and features by sytse on Wednesday September 14, 2016 @05:57PM (#12501538)
To make sure there is no confusion we now refer to ourselves as open core https://about.gitlab.com/about/#stewardship

I want to echo here what I said in https://news.ycombinator.com/item?id=12501271 "If there are features that people think that should belong in the open source edition we're all ears. We've done so before https://news.ycombinator.com/item?id=10931347 A feature comparison between CE and EE can be found on about.gitlab.com/features/#compare "

Regarding the examples please help me understand:

1. Can you rebase in the GitHub interface?

2. Does GitHub have an option to fast forward merges?

3. Please let me know if this is a feature people want open sourced. EDIT turns out that this is part of the open source edition already https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/cont... I created https://gitlab.com/gitlab-org/gitlab-ce/issues/22185 to update the docs

4. We have a commit status API in GitLab CE https://docs.gitlab.com/ce/api/commits.html#commit-status and works with the open source https://github.com/jenkinsci/gitlab-plugin We do have additional integration in EE https://docs.gitlab.com/ee/integration/jenkins.html

BTW you might be happy to learn that what you mention as an example of typical "enterprise-y" feature is available in GitLab CE https://docs.gitlab.com/ce/integration/saml.html

Re:Announcing new tools, forums, and features by bentlegen on Wednesday September 14, 2016 @08:27PM (#12502457)
So, when reading the features page, I was considering 1 and 2 in terms of a feature that I use at GitHub religiously: squashed pull requests (that are automatically fast-forwarded) [1].

If I'm reading this correctly, this exists in GitLab as an enterprise feature, so I think my earlier comment isn't too far off. There also appears to be some community feedback suggesting this should be a CE feature [2].

[1] https://help.github.com/articles/about-pull-request-merges/ [2] https://gitlab.com/gitlab-org/gitlab-ce/issues/4106

Re:Announcing new tools, forums, and features by garethadams on Wednesday September 14, 2016 @06:39PM (#12501810)
> 1. Can you rebase in the GitHub interface?

> 2. Does GitHub have an option to fast forward merges?

So is Gitlab's aim to just play catchup to Github?

Re:Announcing new tools, forums, and features by sytse on Wednesday September 14, 2016 @06:52PM (#12501895)
We already have these features, we just opted to make them EE/.com only since we think they are more relevant for organizations that have more than 100 potential users.

We have a broader scope than GitHub, see our announcement broadcasted on Tuesday for more information and a demo https://about.gitlab.com/2016/09/14/gitlab-live-event-recap/

Re:Announcing new tools, forums, and features by rickycook on Wednesday September 14, 2016 @08:28PM (#12502469)
are you joking? it's the other way around. github is only just now playing catch up to gitlab
Re:Announcing new tools, forums, and features by Manishearth on Thursday September 15, 2016 @12:42AM (#12503472)
GitLab has had a larger feature set than GitHub for a long time now.

Github compromises by having a nice ecosystem of tools which you can plug in, but having it built in is always nice since the integration is tighter.

Re:Announcing new tools, forums, and features by detaro on Wednesday September 14, 2016 @03:56PM (#12500685)
Use fast-forward merges when possible

GitHub (annoyingly) can't do fast-forward merges from non-squashed PRs either.

Display merge request status for builds on Jenkins CI

GitLab implements basically the same API as GitHub for updating build status of commits from external services, or do I misunderstand what feature you mean?

But in general I agree, there are some options GitLab reserved for EE that really feel like they should be part of the CE as well.

Re:Announcing new tools, forums, and features by bentlegen on Wednesday September 14, 2016 @04:52PM (#12501105)
Yeah, I just chose some random features that I may have interpreted incorrectly. There are others; people can read the features page for themselves.

And FWIW, I admire GitLab for their open source work. I just think it's worth distinguishing that it's not entirely open source.

Re:Announcing new tools, forums, and features by sytse on Wednesday September 14, 2016 @05:17PM (#12501271)
Thanks for the admiration. If there are features that people think that should belong in the open source edition we're all ears. We've done so before https://news.ycombinator.com/item?id=10931347 A feature comparison between CE and EE can be found on about.gitlab.com/features/#compare
Re:Announcing new tools, forums, and features by detaro on Thursday September 15, 2016 @11:08AM (#12506786)
Since I'm not sure were else to report this:

When googling for the fast-forward feature one of the top results was this GitHub thread, which had quite a bit of activity fairly recently: https://github.com/gitlabhq/gitlabhq/issues/2324

It seems like many posting there are not aware that this repository/bug tracker is not an official channel anymore -> maybe posting an automated comment in all issues with recent activity or locking them could help avoid confusion? If you arrive via search, you don't see the notice in the main repository description.

Re:Announcing new tools, forums, and features by the_duke on Wednesday September 14, 2016 @07:18PM (#12502046)
So what, some advanced features are enterprise only...

They have to make money after all.

The 'basic' product (which is far more than basic) is open source though, which incredible.

Re:Announcing new tools, forums, and features by bentlegen on Wednesday September 14, 2016 @07:42PM (#12502195)
There are 100% open source products out there, and I think it's worth distinguishing that GitLab is not one of them (as a GitLab employee adds elsewhere, it's "Open Core").

I'm not criticizing the product – they're welcome to open or not open source whatever they like. I'm just clarifying the description the parent used.

Re:Announcing new tools, forums, and features by elliotec on Wednesday September 14, 2016 @03:45PM (#12500590)
It's only kind of open source, and only partly. They call it open core, so saying open source outright is a bit misleading.

The review feature is very new in GL, and that plus all of the things you are mentioning within "everything in one spot" is available in this update (except maybe the coding env, not sure what that means anyway), if you've read the announcement. Github also has self hosting.

Re:Announcing new tools, forums, and features by nfm on Wednesday September 14, 2016 @05:57PM (#12501543)
> It's only kind of open source, and only partly.

That's a pretty misleading characterisation. You can browse the source code, submit issues, see what's being worked on, contribute PRs, and freely download and run your own instance of GitLab. A handful of enterprise features aren't open sourced.

GitHub in contrast is a black box.

Re:Announcing new tools, forums, and features by markdog12 on Wednesday September 14, 2016 @04:10PM (#12500809)
> It's only kind of open source, and only partly

CE is a very large subset of EE. But yeah, maybe "open core" is a better term.

> except maybe the coding env, not sure what that means anyway

Koding integration (I haven't tried it yet) https://about.gitlab.com/2016/07/26/koding-and-gitlab-integr...

> if you've read the announcement

I assume you meant Github's announced features? Yeah, I think they're great.

> Github also has self hosting.

Costs $, Gitlab has free self hosting (updated parent comment)

Re:Announcing new tools, forums, and features by sytse on Wednesday September 14, 2016 @06:07PM (#12501609)
I agree that it is better to call ourselves an open core company and our website and communication should reflect that https://about.gitlab.com/about/#stewardship If we're still using open source to refer to the organization somewhere please let me know.

We've had code review for many years now in GitLab. The coding env probably refers to our integration with Koding, an online IDE https://about.gitlab.com/2016/07/26/koding-and-gitlab-integr...

Re:Announcing new tools, forums, and features by nchelluri on Wednesday September 14, 2016 @04:11PM (#12500820)
Where can I find a link about self hosted Github? Just curious to read about it.
Re:Announcing new tools, forums, and features by jfim on Wednesday September 14, 2016 @04:39PM (#12501024)
Re:Announcing new tools, forums, and features by nchelluri on Wednesday September 14, 2016 @04:57PM (#12501154)
Thanks. I was unaware this existed. Looks like it was launched in 2011[1]. Somehow I thought that with their (presumably, from what little I've gathered over the years) complex infrastructure setup this would be hard or impossible. I wonder if they have an Enterprise team devoted to keeping up with a SaaS mainline and how much work they have to do, or if they made/make some decisions that make this (Enterprise) a fairly self-contained "it just works" sort of thing.

[1] https://github.com/blog/978-introducing-github-enterprise

Re:Announcing new tools, forums, and features by moby on Wednesday September 14, 2016 @05:19PM (#12501286)
Hi there - GitHub Enterprise definitely has a devoted team focused on building features tailored to the needs of customers requiring/requesting an on-premise solution, as well as making it entirely self-contained. We typically release a new version of GitHub Enterprise on a quarterly basis - you can see the latest additions we shipped with GitHub Enterprise 2.7 here: https://enterprise.github.com/releases/2.7.0/notes

We have companies scaling their GitHub Enterprise instance up to 25,000 users, and we also have a dedicated Enterprise Support team available 24/5 to resolve any technical issues.

Re:Announcing new tools, forums, and features by nchelluri on Wednesday September 14, 2016 @05:23PM (#12501311)
Thanks for the answer straight from the horse's mouth! I'd often heard about companies storing their code on GH and didn't understand how they could get away with using a SaaS app available on a public cloud; now I know, they can just run a self-hosted version on their own private network.

I am not your target market, FWIW, but just a curious developer.

Re:Announcing new tools, forums, and features by moby on Wednesday September 14, 2016 @05:30PM (#12501364)
No worries - glad to provide the additional details!

We also recognize that having a SaaS solution like GitHub Organizations meets the needs of many companies (over 75,000 at last count), and our announcement of 2FA enhancements today is an indication of our desire to continue that approach.

Re:Announcing new tools, forums, and features by brazzledazzle on Thursday September 15, 2016 @12:09AM (#12503344)
Github Enterprise (their self hosted version) is quite expensive.