Show HN: Gitly.io – high performance Git service with a 10s installation time
gitly.io
gitly.io
This is going to sound petty, but I think it's important: you might want to come up with a better name. "Gitly.io" is, like, three different regrettable startup naming fads in one.
[0]: https://www.google.com/amp/s/amp.businessinsider.com/the-tru...
and always remember, if one is being 'critical' does not make them 'right' too. yep listen to it carefully, but do not assume they are right 'automatically'
GitAndGo.com Git4Work.com GitCrew.com GitTools.com GitGun.com Git4Me.com GitDuck.com
Edit: I'm not trying to sell you anything. Those domains are freely available.
23 days ago, you made a comment: "Put down the Ayn Rand and go outside." in this thread: https://news.ycombinator.com/item?id=13645996
I've been reading about objectivism, and wanted to ask what you meant by this comment.
Again, really sorry to be off-topic, but the question is burning.
In your comment, you said that CL keeping their product free instead of taking money to improve it was "selfish" in that it was (if I understood you correctly) withholding or stealing innovation from everyone else. I felt this position was ridiculous and could only have come about from reading too much Ayn Rand, of whom I am (to put it mildly) not a fan.
Mine was admittedly an unnecessary and kinda trollish comment, and I've been trying to make fewer of those. Don't take it too seriously. To HN's credit, nobody upvoted it.
Could you help me understand what part of the stated position reminded you of Ayn Rand / objectivism? I'm struggling to make the exact connection.
Is it that ppl who read Ayn Rand tend to project a selfish motive on others?
Also, would love to read more on why you're not a fan of Ayn Rand if you have any links.
And, for the record, upon further inspection, my statement about CL was misleading. CL makes a lot of money, and profits could easily cover the cost of product development. I'm guessing their business philosophy just runs counter to these improvements.
My recommendation would be to write a blog post about the virtues of Objectivism, then submit it to HN. If people like it enough and it gets front-paged, I promise I'll be there in the comments and we can argue all you like ;)
The takeaway is that I hope the easy install process won't only be easy in the absolute minimal case. Ideally I'd love to get RPM and DEB packages and example configuration snippets for a frontend web server. At the very minimum, distribute in a form that is amenable to deployment to Ansible/Puppet/etc (no 'setup wizard' please!) and placement behind a reverse proxy.
It's definitely not going to be 10 seconds for a more serious installation you described. But it will be faster than anything else. You download the binary or compile it yourself, set the path to your repositories, and you are done. No wizards!
I haven't thought about RPM and DEB packages yet, but they will be definitely supported if that's what people want.
It's just so much easier in the end.
What I care about around install, is can I do it in a automatable fashion, including all configuration. I don't want to have to do anything by hand after the first exploration and evaluation work!
And you are right about deployment.
"In addition, you may not use any of the Marks as a syllable in a new word or as part of a portmanteau (e.g., "Gitalicious", "Gitpedia") used as a mark for a third-party product or service without Conservancy's written permission. For the avoidance of doubt, this provision applies even to third-party marks that use the Marks as a syllable or as part of a portmanteau to refer to a product or service's use of Git code."
https://git-scm.com/trademark https://public-inbox.org/git/20170202022655.2jwvudhvo4hmueaw...
Gitly is my side project I've been working on for a couple of months. It is an open source repository manager with a focus on performance, ease of use, and productivity (especially for larger projects).
It's still in an early alpha stage, a lot of features are missing. The source code and the ability to self-host will be available within a month.
There's GitHub, Bitbucket, GitLab, gogs. Why create another solution? Gitly has been designed to be very fast and ridiculously easy to maintain. It is much faster than all of the above. It also offers a couple of unique features.
You can self-host gitly in 10 seconds. It has no dependencies, and doesn't require a database or a web server. Updates are automatic and seamless. It's easier to set up than gitweb! At the same time gitly is going to have the same features GitHub/GitLab offer, and even more.
How fast is gitly? Every single page takes less than 0.5s to load, no matter how big the project is. There are no JS libraries used (in fact, there's barely any JS at all), so the client side performance is great.
You can host your repositories on gitly.io, and it offers the same high performance. Cloning the entire Spring framework on gitly.io takes 11 seconds. On GitLab.com it took 7 minutes and 50 seconds. Of course GitLab.com is massive. However, the way gitly was built, performance will always be this good: it can be scaled horizontally very easily. And if you host it locally, the cheapest 256 MB instance should be enough for most users.
Gitly works great with large projects. I successfully tested it with a 10 year old repository with 4 million lines of code. Bitbucket took almost an hour to cache. Gogs crashed, and I didn't manage to install GitLab to test it locally after trying for 2 hours.
Many of the unique features are to improve productivity and help understand the code base better, which is very useful for large projects.
One of them is called "top files". It shows the largest files in any directory of the repository on one page with detailed language stats. Here's how it looks like for the Spring framework:
https://examples.gitly.io/java-spring-framework/top-files/ma...
Another unique feature is language stats. Gitly displays detailed language stats for every single directory. This can give a better picture of the structure of the project.
One of my favorite features is the search. Unlike all other search engines, the one in gitly will search exactly what you asked for: character by character.
For example, if you are a Rust developer, and you need to search for the following declaration:
fn next(&mut self) -> Option<Self::Item> {
You type it, and you only get the results you are interested in:
https://examples.gitly.io/rust-alacritty/search?q=fn%20next(...
Gitly also has discussions, which is like a simple forum where you can discuss the project, ask questions and so on. Mailing lists will be integrated as well.
Like most other solutions, gitly has a Trello-like issues board, and you can import all your Trello boards.
It's still an alpha. There are a couple of rough edges (e.g. markdown support is not great). Here are the missing critical features that will be implemented within the next two weeks:
- Forking, pull requests, code review. - User profile (password change, SSH keys etc) - SSH support (only HTTPS for now, making SSH authorization secure takes time)
Some of the upcoming functionality I'm excited about: - Go to definition support for most popular languages - Issues as part of the repository, so that it's possible to manage them locally - Pull request interface that would make Linus happy - Search in commit history - A way to organize a large amount of repositories
Thanks for your time, looking forward to your feedback.
It seems you're targeting many features that are way beyond an MVP. Won't you suffer from exhaustion at some point? For example, why not leveraging or extending Git's embedded GitDaemon server features?
Note that I wouldn't mind if it were a paid product, as long as it's open-source.
> Note that I wouldn't mind if it were a paid product, as long as it's open-source.
That's what it's going to be.
Thanks. Looking forward to the self-hosted release. Sounds like it won't be open source, but if it's gratis or reasonably affordable I'll probably get it.
Best of luck!
Since you say it's open source, where is the source code? I was curious what the implementation looked like but didn't see a link on the website. You should add one. Or are you waiting until April 1 to release the source?
Edit: FWIW, I'm not sure "Gitly" is the best name. I'd expect something called that to be at git.ly, analogous to bit.ly. But that's just my impression.
We're working on moving the git commands to https://gitlab.com/gitlab-org/gitaly/ this will help to improve cloning speeds.
BTW The people at Booking have a lot of expertise in scaling Git. I'm sure there will be a lot Gitly there we can learn from.
It's really easy to implement. Expect it before Saturday.
Holy shit that's refreshing! I was planning on moving from GitLab to cgit + an issue tracker/wiki, but I'll give Gitly a closer look. The speed of the examples is impressive.
CHARGE MORE!
This is easily worth $5 per month per user. It's Github, but lean and fast. There are very few people who would sign up at $1 per month who wouldn't sign up at $5 per month.
Also- if you're trying to make this into a business, self-hosting is something that you can get companies to pay for. Github Enterprise pricing is [obscene](https://enterprise.github.com/features#pricing) compared to the pricing for hosted, and companies pay it.
I think this is fantastic- great work.
The pricing is not final, but I do want to keep it simple and affordable.
Please remain true to your current vision.
Just a minor point: although the website uses so little JS, the Signup form is broken without it.
EDIT: by broken I mean it returns a JSON instead of an HTML page or HTTP redirect.
The form should work fine, I'm getting registrations, but I'll check it. What browser are you using?
I will definitely make it work without JavaScript.
Thanks for reporting.
FYI the default avatar image (https://errant.gitly.io/img/avatars/default.png) seems to be missing? On the issues page, JQuery UI seems to be missing too.
If you keep working on it I'll probably keep using it :)
The design will be improved. This is a very, very early release. I'm also not a great designer, so hopefully I'll get some help there :)
The entire issues section will see a huge update in 2 days.
For the end user though I can't see much of a benefit of a subdomain over a URL path, or the other way around. I don't think it matters much but the author might have bigger plans in which having the subdomain could be easier.
Those with the complex use cases should take the technical debt rather than now in a lot of software where every possible complex case is accommodated and the complexity is offloaded to all users.
And I hope you give credit to git for the fantastic piece of engineering it is. So many projects use Git as the central piece yet push it into the background.
I absolutely love git. It's definitely going to be the central piece of the software.
Compare proportional on Gitly to fixed on GitHub, same code.
https://tensorflow.gitly.io/tensorflow/blob/master/tensorflo...
https://github.com/tensorflow/tensorflow/blob/master/tensorf...
However it's not what most people see in their editors. I wonder if anybody noticed or complained about it.
Two things that can go wrong with proportional code:
* Alignments like this
a = 1
long = 2
you can't do that unless your editor is very cooperative. That could make sharing code with coworkers difficult.* Sans serif fonts don't distinguish between I and l and I didn't find a proportional serif font that does look good enough for code.
The default font is not proportional, BUT you will be able to set it to whatever you like. There will also be an option to disable syntax highlighting.
Could you tell me what browser you are using?
I checked with Chrome and Opera and it's monospace there.
Edit: It's monospace in Firefox desktop too (Linux).
I think it's caused be the missing fallback `monospace` in that list.
You might try Trebuchet MS. I've been using it for a few years now and find it to be an almost ideal programming font. It does have easily distinguished Il| and 0Oo characters, and it looks really good in the somewhat large font sizes I prefer on a high-DPI display. The only thing I don't like about Trebuchet MS is it has a really weak tilde (~). Sometime I will have to play with a font editor and see if I can swap in a better tilde.
Regarding column alignment, the solution is "don't do that." :-) I banished column alignment from my code a long time ago and haven't regretted it at all.
Of course, all that said, when viewing other people's code it can be useful to be able to view it in a monospaced font.
Really, or is that just an April Fool's joke?
I didn't even realize what date I chose.
No, it's not a joke.
Also, for anyone looking for a good self-hosted git service like this, check out the existing open source project GOGS https://gogs.io/
3 months of commits activity:
https://gitsense.com/gogs-gitea-analysis/commits-3months.png
6 months of commits activity that only unique commits between gitea and gogs.
https://gitsense.com/gogs-gitea-analysis/commits-6months-uni...
September was when things started to slowly deviate, between the two projects, and November was when gitea really went off on their own. At around January, gogs started to pick up steam and has continued on an upward trajectory ever since.
This is what it looks like, if you want to merge gitea, back to gogs.
https://gitsense.com/gogs-gitea-analysis/merge-gitea-to-gogs...
You are looking at 3,201 changes that needs to be resolved.
This is what moving gogs to gitea looks like.
https://gitsense.com/gogs-gitea-analysis/merge-gogs-to-gitea...
Going this way, you'll only have to resolve 1,244 changes.
These are the contributors to gogs, within the last 3 months.
https://gitsense.com/gogs-gitea-analysis/gogs-contributors-3...
Contributions to gitea, within the last 3 months.
https://gitsense.com/gogs-gitea-analysis/gitea-contributors-...
The contributions information, better highlights why gitea forked, since for gogs, virtually all changes, goes through u@gogs.io
For self-hosting maybe I'll go the GitLab route, which I don't really like. I think the product should have the same set of features for all customers. Maybe I'll just go for paid extended support. We'll see.
It will be interesting to see you pull this off if you are indeed thinking of making your software dual purpose - self deploy as well run a scaleable/fault-tolerant hosting company.
I use Fastmail as my provider.
I love the speed and the (repo internal) search. Looking forward to the announced missing features.
Note: the "Add Collaborators" link works for anonymous users. Sending the form then fails with a JS error.
Is there a plan for a global repo search?
I'll fix the "Add Collaborators" link, thanks for reporting.
> Is there a plan for a global repo search?
Yes! I hope to implement that before the end of April.
> Self-host in 10 seconds
> You can run gitly on your own server. It requires no installation or maintenance. You don't even need a webserver or a database. (Self-hosting will be available on April 1, 2017.)
Maybe April fools day isn't the best choice for a future release date? Though I guess it worked for Gmail...
IIRC, doesn't github have some trademarks on their designs or something? If so, please be weary of this (and their lawyers) OP
That said, details will matter in the longer run. The markdown and code rendering on github has gotten such a large amount of attention over the years, that it's hard to compete.
I was inspired by GitHub of course, I really liked its design when it came out (it was a breath of fresh air after SourceForge and others). I tried to make it even simpler and more efficient.
Yes, it's going to be open source.
edit: I didn't receive email confirmation yet, after signing up (15 minutes ago). HN server effect?
Could be a sendgrid issue, or marked as spam.
The hardware is pretty cheap, plus there are special Compute Engine offers for startups.
In order to clone a repo, you have to sign up, sorry. That's a really fast process, but it requires email verification.
I'll add a "sign in with GitHub" button today to speed that up.
Looks like a great project! Thanks for sharing!
Thanks!
The "at least four letters for username" limit is not. Why is this a restriction?
I also don't mind paid solution if it'll be open source.
> I also don't mind paid solution if it'll be open source.
That's exactly what it's going to be.