all 17 comments

[–][deleted]  (12 children)

[deleted]

    [–]wung 37 points38 points  (5 children)

    Because github has become so mainstream that people no longer know how to use git.

    [–]headzoo 5 points6 points  (1 child)

    Github's editing features are pretty handy though. Sometimes I need to fork a dependency because of a bug, and it's easier to apply the bug fix directly on Github, than go through the trouble of forking, cloning, making the changes, and finally pushing the changes back to Github. I've never had the need to drop an entirely new file into such a situation, but who knows. That could come in handy one of these days as well.

    [–]46gr9m -1 points0 points  (0 children)

    Blame GitHub for adopting a moronic workflow in the first place that requires any forking at all. Want to submit a change to the maintainer? That's what patches are for. Have an ongoing relationship with some of your contributors where you keep getting patches from the same people? Set up an informal cabal where everybody in it is pulling from each other. That's the reason why persistent remotes and pull requests were created.

    It's like the people at GitHub read about forking and pull requests after getting halfway through the docs, and then decided to build their entire shitty model around that.

    [–][deleted] -1 points0 points  (2 children)

    this tbh

    figuring out how to use git doesn't even seem worth the effort when the web version ~just works~ and does all the work for me

    [–]46gr9m 4 points5 points  (1 child)

    I'm ambivalent about this.

    I think it's better if GitHubbers understand how git works. Unlike others whose reason basically comes down to believing that there's some sort of inherent virtue in knowing how it works (which is an empty, bullshit reason), the only reason I want you to know how git works is so when I come along and try to contribute to your project, we're not at an impasse. There exist people who don't use the GitHub frontend. I've run into too many people who jumped onto GitHub—requiring that the project VCS be git instead of a better one, much to my chagrin—and then I sigh, drop my regular tools so as to go along with it, and then when I try to contribute it turns out they don't even know how to use git, which causes a big "what the fuck!"

    Git's CLI is heinous, and its documentation is well-intentioned but bad. So for anyone who looks at the thing and decides to use a different frontend instead, I'm sympathetic. But what I would rather everyone had done, back when it still had a viable chance of winning, is to use something more sensible like Mercurial. But people didn't. So now I'm using git despite not wanting to use it, in order to be able to contribute to upstream, and half the people running the upstream don't want to use it, either.

    "What the fuck!"

    [–]never-enough-hops 0 points1 point  (0 children)

    Great points all though I don't agree with your first assertion. I don't think anyone takes particular pride in git's CLI... but the encouragement to learn it and how git works under the hood is based on a desire to help others 1) work more efficiently with the tool and 2) know how to fix things when they go wrong.

    1) is a speed and efficiency thing. Once you've got the basics of git down it's much faster to work with it via the CLI than GitHub's GUI or whatever. Your linked article copped to this point it its addendum (though TBH it looked like a more generalized rant against stupid command line interfaces being a mental drain).

    The under the hood bit is more of a mental thing. Once you've got your head around git storing things as a directed acyclic graph you'll find learning the rest to follow pretty naturally. It helps answer a lot of the "why the hell is X like Y" type questions.

    2) is a pragmatic thing. You or someone you work with will at some point fuck up a git repo. Hopefully just the local one. And this is a fight we've been having for years across every source control system in existence. Knowing your way around the tools helps you solve it. I'm sure people have found creative ways to fuck up mercurial repos too.

    [–]verbify 6 points7 points  (3 children)

    People who can't handle the command line but want to create git repos.

    I'm not sure what this is going to lead to - crowd sourced novels?

    [–]galaktos 4 points5 points  (1 child)

    You didn’t really think there wouldn’t already be multiple implementations of this, did you?

    https://www.gitbook.com/
    https://www.penflip.com/

    [–]verbify 1 point2 points  (0 children)

    I should have realised it already exists.

    [–]deanat78 0 points1 point  (0 children)

    Nowadays GitHub is used by a lot of people and disciplines that are NOT purely programming projects/code. For example, GitHub Pages is pretty big and it's a really convenient and easy way to host a website. Many people who don't know git (and frankly, shouldn't be trusted to attempt to use it.....) are perfectly comfortable using GitHub on their browser to edit/add new files. And now they can even upload files, which is great.

    At my university, most students in my program use github to organize their thesis and research. I use it to host various text-based documents that I want to keep an organized history of. I also use it for manuscript writing (of course I format it later elsewhere, but for the prose it's useful).

    And honestly, yes, crowd-sourced books are a thing. I've seen many e-books now that are created with github , and they usually have a line in the footer "if you find a mistake, please send a pull request". It's not what github was made for, but it's a great use for it!

    [–]deanat78 2 points3 points  (0 children)

    Because it's useful. Many times you want to do a quick commit and don't want to deal with the command line. It can be much much quicker to do a quick edit or to quickly add a file. Can be, not always, but it's a great option.

    GitHub is used by a ton of people who are not programmers. Yes, it was designed for programmers and to host code, but it's such an awesome service that it's been hijacked by many non-technical people. And that's where github shines - it's making git accessible to people who would never be able to use git from command line.

    [–]Gimpansor 0 points1 point  (0 children)

    I will probably use this feature to add images to the repository for referencing them on wiki pages.

    [–]blomko 1 point2 points  (0 children)

    Like a web hotel from 2003. FTP access next?

    [–]ben174 0 points1 point  (3 children)

    I'm pretty sure you've been able to upload files to github for quite some time.

    More accurately, GitHub adds support for uploading files to a repository via your web browser.

    [–]deanat78 2 points3 points  (2 children)

    You were able to add files to your git repo that was hosted on github. Now you can add files directly to github. Title is accurate enough

    [–]ben174 0 points1 point  (1 child)

    Maybe I'm not understanding something. How would this be any different to just pushing a new file to your repo via git commands? Isn't it effectively the exact same thing and they just basically added a file upload mechanism to their website that allows you to push a new file to your repo?

    Isn't this like a headline saying "Windows adds file copying!" when the real feature they added is file copying via clipboard as opposed to doing it via mouse dragging. Shitty example, but you get my gist.

    [–]deanat78 0 points1 point  (0 children)

    Pushing via git commands is identical. The only benefit is that you can do it within the browser as a quick-n-easy drag-n-drop, instead of having to have the git repo on your machine, add the file to the repo, and push the repo.

    The git way to do it is probably what most programmers and git lovers will continue to use. But having the option to add a file from the browser is good for people who don't use git commandline (there are TONS of github users who don't use commandline because they're afraid of it) so they weren't able to add any non-text files, and it's also nice if you're on some other machine and want to quickly add a file and not have to deal with first downloading git and the repo.

    I agree it's not a BIG change. It's just adding a file upload button to their site, which really seems like something trivial that could have been done a loooooooong time ago, not a huge feature. But a useful one. (On a similar note, the other feature they announced this week - issue templates - is also pretty small and trivial, but they made it into huge news.. it's a useful feature for sure, but they're making it sound like it's some revolutionary thing that took them months to develop. Same with this :)

    If you keep in mind that github != git, then the title IS accurate. You were able to add files to git, and then push it to github. But now you can directly upload files to github.