Hacker News new | ask | show | jobs
by atq2119 2619 days ago
This shows a fundamental misunderstanding of how git works.

The main point of putting something on GitHub is to allow people to git clone it. Every git clone is a fork of the project.

If you don't want something forked, don't put it on GitHub.

1 comments

I understand how git works. I'm discussing the edge case scenario where someone uploads something but doesn't add a license. In that case, forking and cloning should be disabled, at the least.
There's nothing stopping you from entering anything in the LICENSE file, including an open source license, a copyright notice, or something completely unrelated to the license of the project.

With that in mind, to enforce your argument, they would need to create a list of licenses that are okay to fork/clone. Why should they create a finite list of that?

I'm willingly using WTFPL[0] that can be summarized as "as long as you change the name, do whatever the fuck you want to". I know it's not a serious license (I only use it for non-important collaborative Markdown documents I've started), but thanks to its use of the word "fuck", I'm having hard time believing that it would find its way into any whitelist. FSF mentions it on their website, but GitHub doesn't list it as an option on choosealicense.com.

[0] http://www.wtfpl.net/

Does your computer's shell disable `cp -r` for directories that don't contain a license?

The point of uploading to a public Github repo is to let others clone it. Pure tech tools like that shouldn't implement features that require searching a repo for a file that could be a license and then determining whether the file gives others the right to do that clone. After all, letting others clone is the entire point of the tool. If it's not allowed, don't use the tool.

Github is a publishing platform. Publishing is the act of releasing something for distribution. Cloning or forking a repo is the standard method of distributing something using Git. All Github's terms of service do is ensure it's clear that if something is published to their platform, they will distribute it in those ways.
IIUC, you are suggesting that GitHub make new repos private by default, unless a permissive license is set.

This seems a reasonable balance.

It's antithetical to their business strategy. They charge for premium accounts to give access to private repos. Nothing wrong with that, but OP should probably try out Gitlab if he wants an enterprise-level solution for free.
I'm not OP, I'm GP. Second, I fully understand git, github, gitlab, etc.

I'm specifically discussing a situation wherein someone has uploaded non-licensed code to github. I am not advocating for this. I am discussing what should be the default behavior for a repo if unlicensed. Another alternative is not having the repo be usable at all (so not private) if one attempts to bring it public without a license.

Get over yourself. I was referring to OP of this particular sub-thread, meaning you.

And you are continuing to misunderstand how this works. If you can view it, you can copy it. Nothing prevents someone from viewing a public repo. So nothing prevents someone from copying it. Therefore any attempt to make it difficult is just a PITA.

That's why Github has a default license for all non-licensed public repos. Because it's a public repo. If it wasn't supposed to be available to copy, the source code shouldn't have been made a public repository.

So again. If what you're looking for is a private repo solution, Gitlab offers this enterprise-level solution for free. You are barking up the wrong tree.

Angry, but correct.