715 comments

[ 2.7 ms ] story [ 168 ms ] thread
Does anyone have a source for this news beyond the TNW article that's being shared everywhere? I couldn't find any official announcement from GitHub.
I'm the author of this post. The article has been updated to clarify that I accidentally published it one day before the embargo lifted. GitHub will formally announce the news tomorrow.
Confusingly it is also dated on the 5th making it look like it should have been announced yesterday...
Yeah, I know. For some reason, when you put a past date in Wordpress and press "schedule," it publishes the article automatically. That's all this was -- a typo.
That's really unfortunate :(

I'd be interested to see if you do a post-mortem on this - what the consequences were, and what steps you end up taking to ensure that it doesn't happen again.

The upshot may well be that this gentleman and/or this publication no longer receives embargoed information anymore, at least for a time.
I don't know if that's an "upshot", but I'd be interested to know if that happens.

One way to help ensure that it doesn't happen is to take steps to prevent it and post a post-mortem explaining both what caused it to happen and why it won't in the future.

I would've deleted it as soon as you noticed. Might not have stopped people from noticing (nothing on the internet is ever deleted blah blah), but might have improved the optics a bit.
I am also curious why he didn't remove the post as soon as he noticed? Does TNW have policies regarding published stories not being removed?
GitHub should publish the post today after noticing this and remove the embargo for other publications.
Too bad HN doesn't allow following users. :-D
Private repos with maximum of 3 collaborators are now allowed.
Well, if true -- I'll be canceling my subscription :D

Thank you Github / Microsoft!

> Due to a scheduling error, we published this story one day before the embargo lifted. This feature isn’t live yet, but Github will formally unveil it tomorrow. When that happens, we’ll update this post with a link to the official announcement.

Also... kinda unfair to others.

(comment deleted)
"Oops" we got a big industry exclusive. Our bad guys!
I wonder if they reached out to GitHub to see if they felt it was alright to keep this up? Might be good if the author could clarify! Either way, really cool news.
Definitely cool news, even if it is a max of 3 contributors. I'd have liked to seen that a little higher, but they surely know what they're basing that number on.

It's not enough to pull me from GitLab just yet, but if I keep having 10MB+ issues there, I'll switch.

What issue are you having on GitLab? Do you mean the attachment limit? https://gitlab.com/gitlab-com/support-forum/issues/2654 How large is it on GitHub and BitBucket?
Don't know what it is exactly. But definitely within the last year, I'll occasionally add a >10MB pdf or something and can't push that commit up, broken socket everytime. Same thing occasionally happens with a coworker. I 'fix' it by having someone else push the file, then delete the offending commit.

Happens with bash in windows or GitHub Desktop. No one has ever been able to fix it. I have just tried to not use large files.

That sounds annoying to deal with, I'm sorry this happens. I'm not sure what the best next step is.
Yea, IDK. I’ll watch for it again, but in the meantime; it’s very nice to have the CEO of gitlab ask me about my silly large file problem :) If I ever consider leaving Gitlab I’ll weight this exchange against that.
On the other hand, it's also "Oops, GitHub will never give us an embargoed announcement again, and a lot of other companies will probably follow suit."
Are there usually ramifications for leaking stories early like this?

Would GitHub be peeved if another source published this before their official PR statement?

They won't get any more early news, so everyone else will get it before them. That's the usual way news embargo's work anyhow.
"embargo" means Github gave this news to this outlet (and others) early, to be able to work on quotes and stuff. By breaking the embargo, accidentally or not, a possible ramification is getting fewer embargos in the future, if an outlet proves they can't be trusted.
Accidental breaches do happen; they're embarrassing, but not critical. Deliberately or repeatedly breaching embargos will quickly put you on a blacklist. Nobody is going to provide you with embargoed press releases if they don't trust you.
This genuinely seems like an accident judging by the authors Tweets: https://twitter.com/matthewhughes
If I could ever get over the fact that they are using Wordpress, I still wouldn't be able to explain how a single person can set dates and publish stories on their own?!
At some point, it's one persons responsibility to enter that date into a computer in some fashion.. is he supposed to share the keyboard with someone?
You require someone to verify the date. Then the verifier accepts them without looking because they've never been wrong before, and then we're right back where we started, except with more people to blame.
(comment deleted)
WordPress is used a lot more commonly in the news industry than you think.
It’s better than using WordPress to run ecommerce. News content types are close enough to blogs.
I don't work for TNW and have never written for them, but web editing often works like this:

1.) Author submits an article often as a word file.

2.) Editor starts working on the word file.

3.) Author and editor do 1-5 rounds of edits using track changes.

4.) Editor says "Great, post it to run at xx:xx on mm-dd."

5.) The author actually logs in and makes the post.

If you're thinking that technology we use every day could solve this problem, you're right! Alas, it's harder to fix years of habits than the technical issues behind the habits.

I worked on a project to replace a Wordpress content site. The tech team selected React + Redux + NoSQL + microservices + all the other hip words. It took 12 months and cost 1.2 million dollars to build, and turned out to be feature equivalent to the original Wordpress site that was built in under a month. Sometimes Wordpress is the right answer.
So why don't they hide or pull the post down until tomorrow?
I’m guessing the post had already gone viral.

Wouldn’t it be great though if you could kill content from the internet by simply removing the source. Privacy concerns would probably become less of an issue.

You pull the content down not to try to put the cat back in the bag. You pull the content down to show your source that it was an honest mistake and you aren't trying to capitalize on the "scoop".
Yup, this will mean that there's no reason for me to keep my subscription as well.

This will also make me a little more cautious as a consumer, since they're voluntarily removing the incentive for me to pay for their services upfront.

It'll be interesting to see how aggressive they are in trying to gain market share by putting off profitability improvements for the Github business. $40b in operating income and $135b in cash, they can certainly afford to play the long game if it makes sense competitively.

    > there's no reason for me to keep my subscription...
Perhaps, we'll see. Github hasn't actually announced the details yet. All we got is a story from a journalist who accidentally spilled the beans early.

Could be totally wrong, but I expect there may be some incentive to induce folks to keep their paid plan.

> Well, if true -- I'll be canceling my subscription :D > Thank you Github / Microsoft!

What a weird way to thank a company. I get it, but still.

Microsoft doesn’t need thanking. It’s not a mom and pop shop.

GitHub also doesn’t live in a vacuum and this is likely not puuuurely done out of the goodness of MS’s heart. There may have been some strategy wrt gitlab and bitbucket taken into consideration. Dare I say... competition?

I don’t doubt their goodwill, but let’s not pretend the market is about that for MS.

Edit—ah I now see the “thank you” in parent’s post. Ok disregard this, then. Totally fair. I’m dumb. :)

I don't thank for profit companies. They should thank me.
(comment deleted)
Ideally, both parties act out of self-interest and both benefit. Thanks, while nice, are not required of either side.
In this day and age, I dare say both sides of any exchange could benefit from cultivating sincere gratitude for the non-monetary contributions resulting from the exchange.

Thankless business is killing us culturally.

Did they just cut off a significant source of revenue, or do companies that subscribe to Enterprise make them so much more money that it doesn’t matter?
Now that they belong to Microsoft, direct revenue is no longer as important. GitHub will probably be treated as a loss leader for the time being, with the long term goal of making it an Enterprise leader.

Microsoft will be more than happy to use GitHub for analytics, AI/ML research and to drive developers to their other offerings, especially their cloud ones.

Edit: Updated error from "lost" to "loss"

Github was never profitable, private repos were a way to squeeze out a bit of money when they could, but it would never support the service.

Now that they're part of Microsoft, Github's corporate goal isn't to be financially solvent anymore, it is to be a loss-leader for Microsoft's other products. Hook people with github, and then get money from them by offering integrations with Azure, Office, Windows, Sharepoint, etc.

Github was always profitable, that's why they only took VC money in 2015, after around 7 years of existence. With VC funding they started looking more at enterprise customers.

I believe individual paid accounts were a tiny fraction of total revenue.

It’s about getting as much visibility and usage as possible from developers in hopes that you would recommend Github in your organisation. Also provides a strong platform to reach a very targeted audience as well as gauge developer trends.
Microsoft's other git hosting offering, Azure DevOps, has had free, unlimited, private repos for a long time now so it's not really anything new for Microsoft; it's just extending that to more users.
Github allows Microsoft to grab the attention of every software developer on the planet. And, as we know, most software developers are early adopters and enjoy sharing technology with others.

With AWS’s quality of service going downhill, and Google’s apparent inability to execute, this gives MS a huge advantage. Remember, AWS is pretty much how Amazon stays profitable.

[deleted]
(comment deleted)
I currently am on the $7/mo plan for myself (5 private repos I think) - I presume for users this benefits, there's no need to cancel anything.
I think you have unlimited private repos with that plan.

That’s the one I have too

I've been transferring everything over to others for a while now, so this could be in response to a general trend in that direction.
This was the reason I chose gitlab over GitHub.

But now that I'm on gitlab, I'm finding I like it better mainly because of the docker-based continuous integration feature. Managing contributors and 2FA without all that "organization" cruft is handy too.

Sure, theNextWeb had a "scheduling error", and this has nothing to do with being the first to put this news out.
Look at the URL. The datestamp is set to the 5th instead of the 8th, when the embargo for the news lifts. The only reason this post was published early was because a stupid typo when scheduling it.
And, on a numeric keypad, the 5 is directly below the 8, supporting the typo hypothesis. Tweets from the author:

> Oh fuck me.

> I just accidentally published a major piece of news one day early because I've got butterfingers and typed the wrong number in the scheduler.

> Is it too early to start drinking?

> Wordpress is fucking stupid. If you schedule something for \in the past\* it should say "er, are you sure?" instead of just immediately publishing the post.*

What I find most interesting about the fiasco is that TheNextWeb.com's editorial process consists of the stock Wordpress "Schedule a post" function [1] which includes this lovely tidbit:

> Tip: Always double check the date at the top of this calendar before clicking publish, and verify that it correctly says AM or PM

Trying it out in a test instance of Wordpress, he's correct: The initial status of a new post is "publish immediately." [2] Clicking "Edit" brings up a date editor. [3] And "OK" doesn't warn you if your date is in the past. [4] Finally, clicking the "Publish" (which could read "Schedule") generates a post with the URL /01/05/ that's visible immediately with no warning. [5]

Note the visibility and status options above the date: Wordpress does support some options for "draft" or "pending review" options with private/password-only visibility, but apparently TNW - a business that draws $15 million in revenue, is among the top 20,000 websites, and has dozens of employees - didn't use them before this oops.

I somehow assumed that there would be a red-tape process involving legal, editorial, and managerial oversight before you could get any content to the front page of a site like this. Not sure after seeing this if TNW is just playing fast and loose, or if everyone is...

[1] https://en.support.wordpress.com/schedule-a-post/

[2] https://i.imgur.com/0CxPYhS.png

[3] https://i.imgur.com/qa7emUd.png

[4] https://i.imgur.com/svyNS6K.png

[5] https://i.imgur.com/dPyURfD.png

You actually responded to the author (matthewjhughes), which also supports the typo hypothesis.
never heard of them. I'm sure they're hungry for a big break.
(comment deleted)
It's TNW, the Sun or BILD of tech news. Expected behavior.
I'm curious if GitHub is now a loss leader for Microsoft, or if personal subscriptions were a small portion of their revenue.
I'm fairly sure that the bulk of GitHub's revenue comes from companies using GitHub as their primary SCM.

B2B revenue is huge compared to anything you'll get from the few hobbyists who are both able and willing to pay for this kind of service.

I have zero insight on this but I also don't know anyone in my circle who pays individually for Github... When they need that, they use Bitbucket.

I know several people I worked for or did business with that paid for Organization accounts, from Team to Enterprise.

It sounds like recently they sorted things out, but Bitbucket's interface was buggy to the point of unusability for me. Some scary permission issues like not being removed from a corporate team.
Bitbucket’s website is slow as hell. I actually physically cringe when I have to do something through the website (e.g. create a pull request) because I know I’ll be staring at slow-loading pages for the next 5 minutes, even for something that’s 3 clicks away.
And their new sidebar interface is not only slow, but also not very intuitive. It really makes me want to migrate our corporate repositories to GitHub.
Just to throw in my anecdote, I've been paying for a personal account for 8 years. It'll be interesting to see where Microsoft goes with this.
I started paying a year or two ago when I wanted to make a private side project that I didn't want open source. It's nice to keep the same UI between other projects and this one. $7/mo or whatever it is was worth it IMO. Plus I like their lightweight project management tools.
I've paid $8 for the basic plan for years.
(comment deleted)
I'm an individual software contractor and I pay for a personal plan. GitHub UI and UX appeal to me more than competitors do. Also it seems that all the libraries I regularly use keep their code on GitHub, it feels like a community to me.
In third world countries we typically don't want to spend $100 a year for something like this when BitBucket and GitLab are free. This change is a big deal for our situations.
Anecdote: I used both GitLab and a paid GitHub personal account.

I didn't opt to pay for GitHub until I needed to host some private config files in Git, and at the time (maybe a year, year and a half ago?) GitLab wasn't in as great of shape as it tends to be now: for me, it was slow, unreliable, and sometimes just felt "off" in ways I can't really quantify. I already used Github for open-source work and at my day job (and had been using it at work for years), so I paid up (given the alternative, with GitLab not being what I was looking for, was to pay up and host a Gitea instance, or use BitBucket, which was a complete non-option for me).

These days GitLab seems to be a lot more stable and able to handle day-to-day workflows, but GitHub still has the community factor, so all my public repos and forks live there. It made sense to continue to keep my private repos next to my public ones, so when my annual subscription renewed, I was cool with it.

Migrating fully over to GitLab/Gitea/flavour-du-jour is something that's perpetually on my "TODO: investigate" list, and never actually gets done, because despite any minor gripes I may have with it, GitHub tended to "just work", and it "just worked" ~$80/yr worth.

Yeah I'd imagine that GitHub Enterprise and org subscriptions are their primary source of income. User subscriptions never really made much sense to me.
Never mind loss leader; github can probably pay for itself by providing internal analytics to Microsoft which they can use for qualifying hires.
If you want I suspect you can just go play with: https://blog.github.com/2017-01-19-github-data-ready-for-you...

I guess it only counts open source projects, but still that's a lot of data.

Sure, they publish some data. But I'd imagine that Microsoft can pull strings to get better data faster.
Doubt it's worth while...

Afaik I saw the data set was updated weekly.. afaik it's maintained by GitHub.

I always believed Microsoft saw GitHub as a potential "in" for millions of developers, rather than a product that could generate revenue.

This move doesn't worry me, as I'm sure Microsoft would look to do something easy to calm the nerves of people who worried about Microsoft's acquisition. The cynic in me sees this as sweetener for Microsoft's later moves to integrate GitHub with Microsoft's developer tools, which will infuriate me along with millions of other developers.

Why would better integration between Github and Microsoft dev tools be a bad thing?
Not OP but I think some people think that Microsoft might make it more difficult to use other services with GitHub rather than just streamline it for Microsoft. I don't think strengthening Microsoft + GitHub integration is a problem and is probably smart for them to do. They just should not and probably won't make it prohibitively difficult to integrate with say AWS or GCP.
Because I want GitHub to be agnostic and not pushing me towards anything?

This was always one of the core worries about GitHub and Microsoft. Microsoft will not leave GitHub alone. It's too important to developers, and no matter how much they say "we won't touch GitHub", nobody (rightfully) will believe them.

I'm assuming MS knows enough not to break existing integrations, but they could build in a direction such that Azure-based stuff becomes a "first, best" integration with GitHub.
That's cool. I have no problem paying a bit each month for more features on GitHub so hopefully they add more powerful features, but free private repos for individual projects is great since GitHub for many people is a portfolio.
I imagine this will harm BitBucket somewhat.
Bitbucket’s killer feature is integration with JIRA and the rest of the Atlassian stack, so I doubt it’ll have much impact.
I guess that depends on your definition of “killer”, particularly wrt Jira.
Free private repos is exactly why I was using BitBucket. I will have to think it moving will justify the effort.
In my case, Bitbucket will lose someone who was just using it as a dumb git storage backend, and did not engage with the Atlassian products at all. I assume that they won't be particularly bothered to see the likes of me drop off.
This is exactly how I see it too.

If anything this move might be beneficial for Bitbucket because if there's a 0% chance we would use their other paid products, we were just taking up resources.

This is a bold move. That should prevent a potential exodus to other companies, post-Microsoft acquisition, although doubtful if such a bleed in customers occurred yet. GitHub is far ahead of everyone else thanks to its user interface anyway. This should at least force the competition to step up big time.
Well, either Way I will not leave Gitlab anytime soon.
And that's probably why they did it :)

So others won't leave for gitlab.

+1 Gitlab is awesome! Cool community oriented developers and a ton of more features. I see no reason too use github when gitlab is just better. It's also offered as a self hosted service.
That’s my exact issue with GitLab. They have a ton of features but they are not the best at any of those features.
What feature did you find lacking?
Can I remove old docker images from the registry yet? Heck, I still can't order by date, which should have been the default all along. Why would anyone want to see the images ordered alphabetically?

It can take minutes to page through and find the most recent image buried among hundreds.

I'm sorry this has taken so long, but we are working on some foundational API's to manage and list images right now: https://gitlab.com/gitlab-org/gitlab-ce/issues/55978. I've also added your feedback on sorting, thank you!

We are also setting up a team to focus on just packaging related features within GitLab, like the Registry, which should improve our velocity in this area.

Thank you.

> focus on just packaging related features within GitLab

I'm curious what you mean by that?

I find the GitLab issue board to have a poor UX. For example, depending on where you click, it will open a small summary to the right or it will open a new page with all the issue information.

Also, it is ridiculously expensive to have epics, compared to every other issue tracker I have seen, in GitLab issues.

Hi Eduardo, thanks for writing about your experience with GitLab Issue Boards.

Could you please tell us what could make your experience more convenient? Do you have an open issue regarding your suggestions? If not, it would be great if you could open an issue about it at https://gitlab.com/gitlab-org/gitlab-ce/issues. We'd like to follow up on it.

It’s really valuable for us when users take the time to submit issues for bugs, changes, or feature proposals. This helps us steer the product in the right direction.

Hi Eduardo, I'm a UX Designer at GitLab working on issue boards. If you click on the issue title, it will open the issue in a new window. If you click somewhere else in the issue card, it will open the summary sidebar. But I agree with you that it can be confusing and not the best UX! To improve it, we are planning to redesign the sidebar so that you can see most (if not all) of the issue's information, removing the need to open the issue in a new window. You can track the discussion and designs in this epic: https://gitlab.com/groups/gitlab-org/-/epics/383#note_108940... Feel free to participate and share your thoughts.

I'd love to hear more about your painpoints with issue boards (and issues in general).

One thing I like about bitbucket/atlassian over github is bitbucket's pipelines[1] and the bitbucket-pipelines.yml file. I really wish github had something like that.

[1]https://bitbucket.org/product/features/pipelines

I wish they'd port this over to Bitbucket Server sometime soon. Bamboo is a massive pile of garbage compared to most other CI offerings these days.
It’s unlikely due to how it works internally. They’d basically have to rewrite most of it from scratch. Not to mention “Bitbucket Server” is a completely different codebase (used to be called stash)

Source: used to work at atlassian ;P

Azure pipelines is basically the same thing and offers free build to for private repos.
Well hey, something GitHub lifted from GitLab, for a change.
I've been paying $7 a month since like 2010. Woohoo!
This is a smart move.

Gives developers who have small indy projects a reason to use Github rather than a competitor (I know I use gitlab precisely because it's free for my private one-off repos).

I actually switched from Github to Gitlab about two months ago just for this reason. I bootstrap my company from my own pocket and wanted to save a few dollars every month. Really wish I knew this was coming before I deleted the repos and migrated everything.

edit -- to everyone asking, I have no problems with Gitlab and I also have no strong preference Gitlab vs Github, they both perform the same role for me in exactly the same manner. I just wish I had those couple of days back that I spent migrating and editing my deploy scripts.

Exactly the same situation here! Dammit!
Isn't a migration back just a git clone away?

Assuming you're not using Issues or anything non-portable.

That would just be more time wasting. I think he is regretting ever spending time on that.
Yep it's the time I spent making the decision (Gitlab isn't the only other choice, and I did a bit of research), then changing my scripts to point to Gitlab instead of Github and letting a couple of testers know where to go to file issues then familiarizing myself with Gitlab's interface.

Not a huge amount of time, but since I only have about 2-3 hours per day to work on the technology side of the business, it was a couple of days worth of hours from the time I decided I needed to cut spending to the time I had Gitlab integrated into my stack. It was a couple of days I didn't have to spend improving the product, even though it was a win from a financial standpoint.

And now with this announcement, it was hardly even a financial win. Oh well. I don't have the time or desire to migrate back.

(comment deleted)
It sounds like it was the right call at the time. You can't time corporate strategy shifts any more than you can time the market, so just make the best calls you can with what you know.
How does this change by Github make you regret migrating to Gitlab? Do you think Gitlab's offering is in some ways inferior?

I mirrored everything to Gitlab sometime ago, for public repositories and also use them for private repositories. The only real advantage I could specifically name for Github is the organic contribution factor due to their volume of traffic. However, this doesn't really apply to private repositories.

Edit: I see this has been answered below now - time spent migrating.

Also, Github is the defacto standard so most tooling has built-in github integrations.
Yep, although one of the products this competes with is Azure DevOps - which also offers unlimited git repos... and is of course also owned by Microsoft!

I'm wondering what the future holds for both GitHub and Azure DevOps. I actually use both, and have done for several years, and they're both great products - I'd hate for either of them to go away.

Azure DevOps is a lot more than just source control, so there isn't all that much overlap with what GitHub offers. I imagine the future will be GitHub for VCS, issues, project management and Azure for CI/CD, testing and deployment.
Agreed, but I wouldn't be surprised if we soon saw deep integration into Azure DevOps Pipelines from GitHub - what then?
Except that doesn't put GitHub on par with GitLab. So they are basically kneecapping one product (GitHub) in order to not compete with another product (Azure), leaving them with two halfassed products, neither of which are as good as the competition (GitLab, which has built-in CI).

They'd be better off killing one product or the other, rolling it into the remaining one, and at least having a single-brand offering that can compete on features with GitLab.

> neither of which are as good as the competition

I'm afraid you're mistaken there - Azure DevOps combines Git (or TFVC, if you really must!) repos with CI, CD and scrum/kanban boards.

Azure Repos likely will remain competitive, at least in the near term, with GitHub simply for its "by default" integration with the rest of DevOps (versus GitHub's opt-in to the rest of DevOps), and easy hooks into corporate SSO and billing (Office 365). It will be interesting to see what happens with Azure Repos in the longer term.
GitHub is now the Azure front-end with more mindshare. So I'd imagine it will be the one that survives, at a brand level at least.
My move to Gitlab was basically "come for the free repos, stay for the rest of the amazing features". I will not be moving off it, and my new repos will keep being on Gitlab.
Yeah indeed. I actually thought for a moment this meant I could switch back to GitHub, but I use gitlab-ci a lot and really like it.
Same, especially the free built-in CI.
GitHub also has a free built-in* CI service via Azure Pipelines. How does that compare to the GitLab offerings?

https://github.com/marketplace/azure-pipelines

* in marketplace, limitations apply

Honestly I'm almost at the point where I'd prefer to manually perform CI tasks than use anything Microsoft.

Why on earth are there so many domains in their login flow? My password manager can't make heads nor tails of it 90% of the time

Anyone who has ever done development on any Microsoft site has felt the pain of a million logins.

I was working on Outlook stuff at my previous job and it was a nightmare. They have three different offerings of emails. You can login in Outlook and O365 with the same account iirc, but not the others. Or something like that.

I just remember wanting to cry as I tried to figure out how to login.

Then the API docs are even worse. They had different APIs for each email offering and one pointed to the other then that one pointed to the previous one.

Microsoft's problem is that it has too many services. Google may change things constantly but at least they don't have three different email offerings with three different APIs at varying levels of brokeness.

Google does go crazy with its chat applications
It seems to be on par at a quick glance. I however still don't think I'll be switching back.
What features of Gitlab do you prefer?
The integrated CI is amazing, the Docker registry is nice, the issue boards are great, the saner permission model (you can add multiple people as repository owners without putting them in a team), these are the things I can recall off the top of my head.
Not the OP but I really like the free CI and container registry.
It's open source and self-hostable. Its delvelopment process is basically transparent, which is nice as well.

Other than that, their CI system is quite amazing!

Being able to have groups and organizations without the weirdness of GitHub.

GitHub's default path for organizations is that you are creating a business that will be very separate from your personal account.

GitLab's default path is that it's just a group. Maybe just a named group for related projects. Once you dig in though, GitLab's group admin is much better than GitHub in my opinion.

I actually switched back to GitHub yesterday, because it‘s still better integrated in the overal tool landscape (eg Heroku). So I just pulled the trigger on a $7 subscription for private repos. And today the good news of free private repos arrived :)

Edit: typo

I'm sorry to hear you left GitLab. We're working on making sure GitLab offers a great PaaS experience https://gitlab.com/groups/gitlab-org/-/epics/111 (I posted in there 3 days ago, hopefully indicating this is important to us)
This is great news. I'm looking forward to seeing what you come up with.

I'm not sure how relevant it is to you, but I hope you take some inspiration from https://platform.sh/ – it's the PaaS I've had the most luck with. While it isn't perfect, it's the closest thing I've found so far. Their "almost everything is in git" and instant environment cloning are fantastic features.

Thanks, the instant environment cloning looks nice. Does that also clone the database and redis?
My understanding is that everything is cloned – included Redis and any search indexes. I've only tried with a database though, so that's the only thing I'm certain that works.
co-founder here, a bit late. Yes everything gets cloned. Databases, search-engines, message-queues, static files... you get precisely the same cluster in the same state.
No need to be sorry, I'm still bought into GitLab. I use it extensively at work and it's fantastic. But with my private projects, I don't have the capacity to deal with Kubernetes' complexity (even when it's well integrated), I really just want my stuff to be fully managed and GitLab isn't there, yet. I'll keep an eye out.
Thats why Github won't want people testing GitLab because feature wise Gitlab is a much better product and is getting better at a faster rate than github
Seems appropriate that the hub for open source would be open source itself. This is my biggest issue with gitlab
I switched to gitlab for the 10g free space per repo. Wont be switching back to github until they beat that.
...that sounds suspiciously like you're storing binaries in git.
Git LFS can take care of that.
In GitHub's case, only if you're willing to pay for the bandwidth... something which I am currently struggling with in regards to open source projects needing binaries in-repo..
I do game development. Gitlab works great for small game projects.
What are you using a 10GB repo for?
Game development.
For the graphics and sound files?
Does gitlab have free integrated PR code review tools?
I am not sure what you are asking, but yes you can create and review PRs in GitLab.

GitLab is GitHub but with more features and a smaller community. GitLab focuses more on code than community, at least from my experience with it.

Yes. The free tier has the basic pull request functionality (called merge request). Some features (require approvals before PR merges from contributors, require approvers from certain groups) are limited to paid tiers on gitlab.com
Why, oh, why couldn't they have called it pull-requests.

Changing the terminology makes me not want to use gitlab.

Because pull request makes less sense than merge request. If you are building a new product why would you copy the mistakes of the competitors.

Take a new dev who has never used gitlab or git. Merge request instantly makes sense but pull request does not.

I won't dispute that my argument was emotional nonsense :)

But... But... Yes, I have no good arguments, but after 10 years of saying pull-requests anything else feels wrong.

While understandable, this is sad to see. The amount of interesting and useful code that is currently available due to GitHub defaulting to public will likely be seriously negatively impacted by this.
Maybe, maybe not...

Open source is just as much a culture. I don't mind fewer repositories without a LICENSE.

I suspect people who wanted free private hosting used gitlab or bitbucket.

I can only speak for myself, but I had simply put all of my private stuff over in GitLab instead. For folks like me, this will result in no external change. Just a question of where I stash stuff.
Yeah, I've just been using bitbucket for this purpose for years.
Same here but now I will probably switch to GitHub because I like their product.
One more, except I was one of those paying $7 a month to GitHub for the private repo's.
Yep, it makes sense. I think this is why it was an easy decision for them. GitHub does not want developers getting cozy with Gitlab/Bitbucket, even for personal projects, because then those developers will start to push the companies they work for towards those same providers.
But doesn't that kind of assume there was previously no free way to host private repos?
Hadn't thought of that. It's genuinely a worrying potential side effect.
You could be correct, but the “social network” boost to reputation potential is strong enough now that I suspect a lot of people will still choose to post public content where reasonable, while us cheapskates won’t have to look to another platform for private code hosting.
For better or worse, having a Github profile is now a thing that’s expected of developers, so public repos are here to stay.

Personally speaking, I’ll still default to public for my side projects. But a free private repo sounds like exactly the thing for online classes or web challenges where you’re explicitely asked not to share your code. I’ve just started on the cryptopals challenges, now I know where to put my code :D

Offline classes too! As a former TA, I can attest to sometimes being a struggle to deal with grading when students from past semesters have their code publicly available online. (The solution we used was to change the specifications for projects slightly so that old code wouldn't produce the correct results; generally students who would rather cheat than learn are too lazy to actually modify the code they're plagiarizing, and we usually caught at least one or two each semester)
I feel like most people either want their code public (they want to share their projects with the world) or they want it private (they don't want the rest of the world to see their embarrassing toy projects).

I think the projects that could go either way -- that are public just because it's cheaper than private -- probably aren't that common or that important.

Plausible, or maybe more people will try things privately and when they get some interesting results they'll turn it public. I know I had a little amount of shame in not throwing lots of stuff publicly..
On the flip side, the amount of Hello World projects masquerading as useful things in their README.md in search results until you actually click through and look at them properly will hopefully drop off a cliff.
Agreed. I can't tell you how many times I've been at my wit's end trying to figure out how to do something, and stack overflow had failed me, and in my desperation I start searching github for strings like "GL_ARRAY_BUFFER", and scroll through dozens of pages of results, and lo and behold, someone's half-finished toy application contains exactly the line of code I was looking for.
I have had unlimitee private repos on GitHub for over three years (job perm) and have made use of them twice ever. One for my vimwiki and the other was created and then touched.

Hopefully others will be like me and simply opt to not use it.

I doubt it. I don't see how more developer agency is a bad thing. If anything, more people will start using Github earlier on in their development cycle and Github will be the obvious platform of choice for when those projects are ready to go public. On the contrary, I think we'll probably see less trash and more quality projects on Github.

Besides, I wouldn't want to live in a world where people want to do X (private repos) but are forced to do Y (public repos) because X is not feasible. Now X is feasible and the landscape will more accurately reflect developer intentions.

So now what benefits does a subscription offer for a casual developer?

If the 3 collaborator limit isn't a problem, is there any reason to keep a subscription?

I imagine they'll eventually remove individual plans entirely. Microsoft probably doesn't care about the tiny revenue from random developers paying them and would rather focus on enterprise plans.
"Due to a scheduling error, we published this story one day before the embargo lifted. This feature isn’t live yet, but Github will formally unveil it tomorrow. When that happens, we’ll update this post with a link to the official announcement. "

Well played @The Next Web :D

Can a Github.io website be freely hosted with a private repo?
Yes - we do it at our company
Yup. At least at the business tier you can. Push to gh-pages and it deploys to the site, but site visitors never see the ingredients that go into the sausage.
Nope, not on the free tier via a private repo.
Looks like no longer:

`Upgrade to GitHub Pro or make this repository public to enable Pages.`

I actively avoid using GitHub private repositories for this very reason since I have too many 7-9/month subscriptions it all adds up fast. This actually will encourage me to start some fun project ideas more now that I know I can rely on the private repos.
Now I'm just waiting for GitHub CI. :)
GitHub Actions is going to be GitHub CI for me: https://github.com/features/actions
I'm pretty sure it will be paid feature in near future.
Not for public pipelines. I don't think it will be for personal private repos either. I'm sure they will add pricing plans that allow you to execute more pipelines in parallel, etc though. What makes you so sure it will be a paid feature?
Maybe Github Actions qualify? https://github.com/features/actions I must say it looks almost like Gitlab's pipeline system, but somewhat more flexible. If Github's free plan allows you to use pipelines I might just have to test it to compare.
It does. I'm using them now, but they might still be only available to beta users right now.
Nice, It looks pretty good!
I wonder if it is because they are noticing their userbase numbers slipping.
This was the main reason I moved away from github. It's late, but still a welcome move.
[deleted]
Seriously? Can you elaborate?
(comment deleted)
Just by the nature of the comment, dropping such an inflammatory claim with 0 context or evidence, you can tell they were probably flagged with good reason.
(comment deleted)
(comment deleted)
(comment deleted)
They banned you for a negative comment on HN?
One of the best uses of GitHub is being able to search for some obscure framework method name or enum constant, and find examples of working code that uses it. This has saved my life many times when trying to figure out how to configure Java frameworks to interact with each other.

When searching for this kind of code, you have to wade through an awful lot of repos containing half-baked personal projects, experiments, unmodified clones of upstream frameworks, and barely-modified boilerplate examples. It would be nice if there was less of this detritus clogging up the search results.

However, sometimes the code you actually want is embedded in some otherwise useless, half-baked personal project, or barely-modified boilerplate example. So if all these projects disappear behind a veil of privacy, maybe it won't be a net win.

Honest question: how do you make github search work for you? It often fails to find stuff that I know exists in a given repo. Nothing fancy, even single-word full symbol names.
I've found usefull code snippets on github via google in the past.
How do you search for those exactly?
What you describe used to be a problem years ago, but since they updated their search to its current iteration a year or two ago, I have had no issues finding exact string matches in repos. Can you give an example of a repo and a search that fails?
I cannot agree more with this. I love being able to search and see how libraries are being used in real life projects. It definitely helps.
I have also experienced this phenomenon. Finding some brilliant hack used in a randos personal project to work around a bug or deficiency in a popular library.

Finding a library with no documentation then Searching GitHub to see personal projects where the owner has already reverse engineered and integrated.

I always admired Github for incentivizing public repositories to promote collaboration and open source. Would hate to see that fade away.

Perhaps that's how they're killing OSS?
This is the killer feature of GitHub for me. When learning a new language, being able to sense-check your code against what someone has done in the past has helped me understand how and why some things work the way they do.
I like the last two paragraphs :p