We've been using self-hosted Phabricator at work for building nuclear reactor design software and it has been pretty darn amazing. It's quite easy to get going and has been very low-maintenance.
* Even has a serious business mode, for the most serious businesses.
* Written in PHP so literally anyone can contribute, even if they have no idea how to program.
* Even babies and dogs can contribute.
* You, too, can contribute!
And then underneath: 'Companies probably using Phabricator'
We have also been using Phabricator for the last year in the FinTech startup were I direct the technical team. Phabricator is really awesome in general and has been a live saver.
We started using it due to the Arcanist pre-commit hooks. We now use it for issue tracking and may be soon migrating our "scrum" functionality from JIRA to Ph.
The only downside I see is that it is not very well documented... in fact I will say it is all the opposite. But still, the fact that we use it happily shows how good it is!
If you're seeking to stay within the Atlassian ecosystem, the product that you're looking for is actually FishEye[0]. (Yes, yes, paying money, etc., but if you're a large organization, you're already used to buying stuff off the shelf to solve problems like this.)
On the other hand, if you don't feel like drinking the Atlassian sugary beverage with an odd taste, there's LXR[1] (and LXRng[2]), OpenGrok[3] (remember OpenGrok?), and Etsy's Hound[4], not to mention Russ Cox's standalone Go implementation of Google's code search tool[5].
Just an FYI. I've been contacted by Atlassian to make my search technology available for Bitbucket's ecosystem. Right now it's being developed as a chrome extension, and you can learn more about it here:
If things go smoothly, Bitbucket users will be able to make search, a first class citizen.
Edit:
I should have mentioned it, but the current version of GitSense in the Chrome store doesn't support Bitbucket. I'm still testing it out but it should be updated within the next couple of days.
Stash (Bitbucket Server now) lacks a ton of features that Bitbucket (and Github) have. Like most Atlassian products, the base product has subpar functionality that you can theoretically expand with overpriced and/or low-quality plugins.
Also, the degree to which Atlassian products integrate varies a lot. FishEye and Crucible integrate closely. Both of them integrate OK with Jira. Neither of them really integrate at all with Stash, which has its own implementation of code browsing, search, and review. Jira and Stash integrate acceptably, but not very flexibly, and not to a level that surpasses any number of third-party integrations.
And there's no level of integration that would make Confluence worth using.
There is no good reason to be a full-boat Atlassian shop, period. If Jira is what you want, use it; I'm not a huge fan of it conceptually but it there's nothing wrong with it. Crucible is decent if you're willing to put the effort in to get it set up for your workflow. Nothing else of theirs I've used is worth the time it takes to set up, let alone the cost.
> Stash (Bitbucket Server now) lacks a ton of features that Bitbucket (and Github) have
CEO of Atlassian here. Can you list the features you deem missing? I want to check them against our roadmap, as I don't believe we have many gaps, and a host of things better.
I'm at US Customs so we have pretty much the entire atlassian suite self hosted: stash, jira, fisheye, confluence and crucible, some plugins... some of the parent/sibling comments have spelled out the poor integration between stash and the rest of the suite.
Here's some additional things off the top of my head...
- search! maybe our fisheye isnt indexing all our repos properly (we just recently migrated 10+ years of svn codebases too, in addition to a slew of new git repos) but I would have hoped to be able to do deep code searches within stash itself, across many/all repos.
- project areas: Only one level hierarchy. we'd rather be able to form adhoc groups (think github organizations) under those project areas
cant think of any more right now but it's late saturday evening :) but you can certainly have your folks contact us at CBP and we'd be happy to give deeper feedback if you want it
Thanks for taking the time to write feedback. I really appreciate it.
Search is known and being worked on. FishEye should work in the interim until we do Stash native search - if not - please contact our support team.
Project areas - will get the team to dig into this more, and understand the real underlying use-case you need this. Is it search? Permissions? Discovery?
It sounds like you might also (or rather) be looking to do things by groups people (ie self-organised teams), rather than a multi-level repository structure?
I'm a product manager at Atlassian, feel free to email me (rbarnes@) if you'd like to crack this open, I'd love to hear more.
(I'm going to refer to Bitbucket Server as Stash here because that's what it's been called for most of the time I've used it and to keep it distinct from the public offering I'm comparing it to.)
Stash and Bitbucket have converged more than I expected, mostly because my recollection of Bitbucket was closer to Github than it actually is. But versus Bitbucket, Stash is missing Mercurial support, snippets, issues, wiki, project overview pages, and some social features. The lack of snippets was particularly vexing to me in my day-to-day work until we started using Slack. And Slack snippets are still a poor substitute for Gists.
Versus Github, the difference is more pronounced. Github has better search (and it isn't even that good), much nicer pull requests with superior integration to the issue tracking system, a much better API, better profile pages, static site generation, and in-place editing.
Yes, I know the answer to the lack of some of those features is "use our other products too", but Atlassian's competitors offer products with lightweight issue tracking and wikis. And while the features Stash provides are generally decently implemented and usable (the last few versions have been a big improvement), Confluence... is poorly suited to be used as a programmers' wiki, to use the gentlest language I can muster.
The removal of wiki-formatting from Confluence was a huge blunder. Every programmer who comes into contact with the Atlassian suite is now going to do their best to avoid it in the future.
Started moving from TFS over to Bitbucket server (local install for legal reasons). Have thus far created one project and a half dozen repos in it.
Using this for work:
- Would love to be able to see something on my profile page. I've got hundreds of commits but my user page is completely empty. Maybe this is because our repos are private, but since I'm logged in I would expect to see something.
- I love GitHubs personal commits page, as well as the reporting features baked into each repo. I think it would make the higher ups happy if they could see how active we are.
Note that there is a plugin that seems to do this, but while it's cheap for 10 users the price escalates at a weird rate ($1 to $6 to $8 /user at the first three tiers). At this point I'm hoping we can trial it out to show how much it would help with reporting/at a glance metrics, and then hopefully find funds for it. Or find a package to generate these locally. I'm not sure why this isn't just baked in though.
- Triggering emails when commits are made seems to be a plugin? Or email isn't setup correctly yet. This one still needs to be dug into.
- This is a value add: README file support for projects?
Maybe it's intentional, but coming from GitHub a local server install of Bitbucket is just so plain.
Edit: And kudos for reading Hacker News and leaving a comment asking for feedback.
I'll see what we can do on the profile page part. Would be easy to "put something" on the page - harder to put the right thing. Email me if you have thoughts (scott@).
Email should be built in. Raise a support ticket with our amazing support team if any issues with that.
I'll check on README. I thought we had equivalent, but perhaps in a different place. Will have to wait until the team wakes up.
> Maybe it's intentional, but coming from GitHub a local server install of Bitbucket is just so plain
We try to be deliberate about adding features that matter. The Bitbucket server team is one of the best at Atlassian, so hopefully you're saying the lack of "right features" is the issue, not just the extra whitespace.
Thanks for taking time to add feedback. I really appreciate it & helps us make a better product.
You're right about commit notification emails, an add-on is currently the best way to get this. It's something we'd love to add soon but isn't being worked on right now. You can hook up HipChat notifications for new commits as an alternative, and one that means less email.
While we've got your attention, the number one feature I'd like to see is installation and configuration that meshes well with devops tools.like Chef, Puppet or Ansible. Your current installers require multiple phases of installing the files/dbs and then interacting with running apps via a web ui to configure.
Could you make it so that you could just lay down files, attach storage and start the service?
As for clustering, Bitbucket Data Center[4] provides the same self-hosted functionality as Bitbucket Server for 500+ user tiers, with active-active clustering for performance at scale and HA, as well as Smart Mirroring for distributed git read performance.
Feel free to email me (rbarnes@) if you have feedback on how these options work for you.
I'll check. There are ways to set them up without using the web UI, but we can probably do a better job of documenting them for the power user. Stay tuned.
For Clustering - any reason you need active/active? We have mirroring[1] which (from our chats with most of our customers) is what people prefer.
That bugs me also. We're working on it, but will take a while I'm afraid. One of those "death by a thousand cuts" issues, but really difficult to fix & migrate millions of users.
You're kidding, right? Search in github is so bad that I typically clone a repo and grep it rather than try to find things with their search. And they built a wiki feature without search whatsoever?! (from what I can find) That's absurd
> has practically no search capability. it's the underappreciated killer feature of github IMO
I honestly have to ask: have you used GitHub Enterprise? It's search functionality is horrible. Oh, it searches for things, but it won't find things. And this isn't a rare issue. And I'm not talking about anything other than searching through master branches.
Just an FYI. GitHub's Enterprise search will get significantly better once I'm able to integrate my search technology with it. You can learn more about the search technology here:
Searching is done at the branch level and you'll have niceties like case sensitive searches and you'll be able to search across multiple branches at once to verify bug fixes and what not. It also introduces commits and diffs search, which are currently not possible with GitHub. And once again, these searches are at the branch level.
I would suggest Atlassian. I've met both founders professionally and at least one of the duo is not weak enough to let this happen to his company. If even they capitulate, then you're fucked.
Haven't seen anybody mention Microsoft's Visual Studio Team Services[1]... private repos, reasonably priced for teams, and some pretty sweet extra tools and integration into other services. I've used it for a few projects and prefer some parts of it to github. You don't have to use Visual Studio itself or, really, ANY other Microsoft tools.
GitLab.com certainly is much smaller. But it is growing fast and projects like mailman and fdroid are already using it. If you think of a community as the people that make the platform itself better, more than 1000 people have contributed to Gitlab.
Hosted: Bitbucket, GitLab
Self-hosted: GitLab, Gogs
None of these come close to GitHub in my experience.