Skip to content

Instantly share code, notes, and snippets.

@ceejbot
Last active March 14, 2019 02:57
Show Gist options
  • Save ceejbot/6322643 to your computer and use it in GitHub Desktop.
Save ceejbot/6322643 to your computer and use it in GitHub Desktop.
A summary of things I miss about Github when I use Stash.

What I miss about github

See this Cloudup stream for visual references.

The short answer is that I miss everything. There is no comparing the two projects. Stash's feature set is a shadow of Github's.

What a project looks like on Github:

What a project looks like on Github

What the same project looks like on Stash:

What the same project looks like on Stash

The constrast is stark. The Stash project has:

  • no project description
  • no most recent commit message/contributor on top
  • no most recent commit message/date for each item in the file browser
  • no contributor information
  • no commit count, no branch count

The Stash view shows almost no useful information at all. It renders the README markdown, which is nice. It fails to render previews of markdown anywhere else, however. It also only previews that one file type. On github, I can preview not only markdown everywhere, but also geojson files, 3D models, and csv files.

Editing in-line

I didn't know how much I loved the ability to edit files right in the web page until I went to do it on Stash one day and couldn't.

Gists

Gists are ways to have conversations about code or anything without needing a full git repo. They're ways to share documents like this one.

They can be code files, markdown, or a fast way to share log data with teammates.

Stash has no equivalent. There's a plugin you can buy that lets you do something like a pastebin clone, but it's nowhere near as useful as the git-backed syntax-highlighted comment-enabled Gist.

Comparisons

Comparisons without PRs:

comparison without PR screenshot

On github, I can click the "compare" button on any fork or branch to compare the state of my code to the other version. I can tinker with the comparison until I feel ready to make a pull request. Stash has no equivalent. If I want to compare branches, I must do it with the git command-line instead of with Stash.

Issue tracking

Github has Github issues. Atlassian has Jira.

Jira is giant, complicated, littered with fields you don't care about, heavyweight. It takes forever to enter a single simple issue. It has no integration with Stash anyway: I have to paste in links to commits by hand, even when I've mentioned a bug number in a commit message. Perhaps some for-extra-money plugin exists to solve the integration problem, but nothing can solve the problem of a bug client that has lived long enough to accumulate that many fields for a bug.

Would any engineer ever choose to use Jira for a personal project?

Github issues are simple and direct. Title, markdown description, assignee (optional), milestone (optional), tags (optional), markdown comments with link conveniences to commits & people. Excellent integration with the git workflow. The simplicity scales even to large busy projects, like this one:

example

The equivalent listing for the Stash project itself was three clicks in from the top page. I knew which links to click on so it didn't take me very long. I'm surprised by how much less information they manage to show on that page. I get far less of a sense of the project's activity than I do from the lighter-weight Github tool.

Pricing

My engineering director assures me that Atlassian is a lot cheaper and that's why he went with it. That'd be the only reason anybody ever has for choosing it, but for mid-sized engineering organizations it can be a strong argument.

For a company of less than 500 people, Atlassian's pricing looks like this: $12000 + $16000 + $12000 = $40K/yr for the 3 Atlassian products

Github pricing is per seat. For a company the size of mine, with say 50 people needing accounts, it'd be $15K/yr. Over 150 people Github starts looking pretty bad. For many companies, hosting on Github's servers makes more sense, unless you don't want your code living on somebody else's disks.

Summary

Stash is a centralized server for git repos. It adds almost no value to me beyond that. If you want to do something interesting with git, you'll be doing it in the command line or a dedicated git client.

In response to Stash's browsing features, I have beefed up my git aliases considerably, so there's that.

@SachinKainth
Copy link

Also, un-deleting deleted branches is not as easy in Stash as it is in GitHub.

@alexeyzimarev
Copy link

Jira integrates properly with Stash. There is no "pricey plug in" involved but just RTFM. You can also create and merge branches for Gitflow directly from Jira.

https://confluence.atlassian.com/stash/jira-integration-278071966.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment