hackmdio/codimd

Switching away from GitHub?

SISheogorath opened this issue ยท 18 comments

Hey community,

I already asked in our Matrix channel what people think about it and now want to have a more detailed discussion.

HackMD-CE is a free software project. We create our code under AGPL and value other free software projects.

Now it's the case that the platform we host our code on is running non-free software and was recently bought by Microsoft, as you probably noticed.

Along with this a lot of other free software projects realized that they rely on GitHub and/or that they don't want to host their code in Microsoft's hands. This leaded to the decision to move away from GitHub. Starting with personal projects as well as whole organisations.

I want to make clear that I'm not about to follow any panic that came up, but I think it's a good point in time to do such a switch. We can either switch to GitLab.com, which is right now still hosted on Azure while they are about to move to Google Cloud, start to self-host an Gitlab, Gitea, Gogs,โ€ฆ instance, or switch to existing GitLab, Gitea, Gogs,โ€ฆ instances that run by other people/projects.

I simply guess that using the classic git workflow with mailing lists is not what we want to do

For all who explicitly want to stay on GitHub, I suggest to use ๐Ÿ‘Ž as a reaction to this statement or to add a comment. Those who want to move away from GitHub should leave a ๐Ÿ‘ to this statement or add a comment. Finally those who don't care, can simply not care at all ^^

Happy discussing! ๐ŸŽ‰

Besides the license model, the type of governance of the new platform should be considered. Just using an OSI compliant free software license is not enough. Ideally, the software for the platform gave up name, trademark, and IPO to a non-commercial foundation like the Cloud Native Foundation or Linux Foundation.

Otherwise, +0 :) IMHO GitHub was always closed source, also when you made the initial choice to use it back in the days. Just because it is now Microsoft who bought it, doesn't change the rules when you accepted the Term of Services when you started using it. It seems to me just because the name Microsoft popped up, GitHub instantly has lost his Hipster image and is not cool enough anymore :)

@indigo423 About renaming and this way also the trademark question is probably solved with #720 anyway.

The IPO question is still open, but I guess it's also out of scope for this issue ^^

Otherwise ๐Ÿ‘

@SISheogorath you shouldn't mix the governance issue to your own project, it was more like a hint to consider when you switch to your new Source Code hosting/software platform :)

+/- 0 not as in "not care" but as in "this decision is complicated and I find pros and cons for both".

I do not think that MS will ruin github. If it ever were to ruin github, we could still move somewhere else then. My problem is with "we're on github, and we're requiring every potential contributor or interested bystander to use a MS service".

I also think, free software should not require proprietary software to be used, but this has been true before as well, as @indigo423 has pointed out. Also centralising everything in one place is a bad idea, but we, speaking for "open source community in general", chose it to be that way. It's not like Github forced us to use their service. Moving to another large silo (GitLab, BitBucket) does not change that substantially. Moving to a tiny or perhaps self-hosted platform will add a huge barrier to contributions. On top of that, self-hosting would just suck up lots of time just for that platform that could be spent on writing HackMD code. I am explicitly against self hosting in this case.

That said: Github has done way more good than bad for open source in my opinion. I do not think of MS as mustache twirling bad guys waiting to push the big red button on open source. I guess we will be fine. If someone is strongly in favor of moving away, I'm not standing in anyone's way. Hence the +/- 0.

I'm for leaving github, but I think, we're still missung a great alternative concept to move to. I would love a concept, where everybody can host a git-Server and people could colaborate across Servers (Any webdev here, who wants to implement that?) I think, the best future, we can get is an 100% OpenSource, completly decental network with ability to open issues, fork, commit, pull-request and do all the cool git-stuff across the Servers.

Only moving to another centralized git-provider is a nice sign but not necessarily an improvement

+1 from me

Not only by mail: There is no problem in doing

git clone <central blessed repository, possibly even on gitlab>
git remote add someName <another repo on a different server>
git remote add someOtherName <a third repo on a third server>

and then just work with those (the default "origin" is just one remote, there can be others).

For example

git fetch someName             # <-- someName was the name in line 2 above!
git merge someName/patch-1
git push origin

You just got data from server 2 and pushed it to server 1. Done.

It's almost sad that Github centralised git as much as it has. It was developed specifically with decentralisation in mind.

It seems like it's very relaxed here. ๐Ÿ‘

I'll keep this open until the end of the week and if we have no significant number of people who want to switch away from GitHub, we'll stay here as we are right now.

This goes along with the final decision about #720.

Since it's friday now and things stand 3:3โ€ฆ

image

I don't think that there is a huge interest in switching away. So we will stay on GitHub.

I'm just running some tests with GitLab, please give me some hours to finish them and post my arguments ;-)

Some arguments that propose switching to GitLab:

  1. It is freer than GitHub
  2. It has CI/CD
  3. Migration is relatively easy

A bit more detailed:

  1. was discussed already. IMHO it is still a good step to switch to an open core'ed software, even when it is not distributed but decentralised. For me it is already a bit silly to use GitHub and Sublime for example to create free software ;-)

  2. We MAY use GitLab Continuous Integration/Continuous Delivery instead of Travis. It provides a more complete dev/deployment cycle. I successfully ran an naive translation from .travis.yml to .gitlab-ci.yml on my own GitLab instance. GitLab.com provides Runners and everything we need for this.

  3. Migration would be easy if we would leave this repo named HackMD and pointing to CodiMD on GitLab(.com?). Especially with OmniAuth users could find the new home easily and log in with their existing accounts.

Summing up, I think it would be a good decision to host CodiMD at GitLab.com, a selfhosted GitLab CE or even my instance ;-).

Cheers
~@HerHde

There are many instances of gitlab! :) I think the best approach is to keep the repository here open and only mirror the code to here... and on the README.md redirect the users to the main repository! Also all issues should be migrated to gitlab...! its now 5:3 ๐Ÿ’ƒ

Even 10 pro votes are no reason to switch when there are two to three orders of magnitude more users.
I didn't vote against because I would not abandon the project if switched away from github but in the current state I would also not vote in favor because until now nothing really changed and with the switch you would certainly loose more userbase than with the stay.

Don't get me wrong I like gitlab and even host one myself but I don't see the profit.

Let's not keep voting until the result fits. Granted, the timeslot was not enormously long, but still: there was some discussion about the topic (in here and in the matrix channel). Nothing really substantial came up.

I think the second post by @HerHde illustrates this. If all you can say for gitlab is, that it's easy to switch to, we might as well switch to bitbucket. It's easy to switch to (sarcasm!). It is freer - as in: gitlab as a service is still a private company hosting their stuff on cloud servers by other private companies. This holds true for most hosted services. In that sense, freer is a very relative term.

And: No, we will not host our own Gitlab (or similar) server. Plus: i'm not comfortable hosting code on any personal instance (this is not directed at @HerHde - in fact I'd like to thank him for his offer, but politely decline!).

Don't get me wrong I use gitlab at work, and I quite like it. This is not about Gitlab. This is also not about individuals hosting something like gitlab. It's about where team members focus their time. Even if it's easy to switch, there's a real cost in making a switch.

Once the situation changes again (for example if MS actually makes questionable changes) this can be debated again. Until then, please let's focus on making CodiMD better, and not about where it's hosted.

Hopefully we're doing a good job so far allowing GitHub to be GitHub, and supporting the developer community. I don't work for GH (I'm in MSFT's Identity org, and was previously on the browser/web ecosystem team), but am both interested in your feedback and sensitive to your concerns, given I am a regular user of HackMD.

I do not think that MS will ruin github.

I hope so. But history is there, and considering what happened to Foxpro and a few others makes me a bit doubtful.

They have bought, in the past, a few gems, and after some guys made a lot of money with that deal, after a few years of marketing, the gems began to get rotten, and were either swallowed into a "native" MS thing, or just died.

It should be noted that many of the community of CodiMD now gather at https://github.com/codimd/server. We were talking about leaving github when we went separate ways from the hackmd team, but we didn't see any immediate reason to do so.

I don't think MS did a bad job with github. We discussed this more on the grounds of "too many eggs in one basket" (all open source projects in one place, monoculture ...) and not from a "MS will do something bad".

That said: Git is inherently distributed, and we would be happy to accept patches via mail or forks on other platforms.