Would you contribute more to core if it used Github?

Related to the discussion on Contributing to WordPress, I wanted to see if anyone else felt like SVN and Trac were big barriers to contributions to WP.

Personally, I’ve made a couple of attempts at patches that were ultimately not used (and I’m OK with that). But it was the process of figuring out Trac, figuring out how to make a patch, and using SVN that ultimately hold me back from making small changes.

On Github, I’ve made contributions to several projects using the UI for branching & pull requests. I’m at a point in my life where I can’t dedicate a lot of time to core development, but I can make quick fixes, correct typos, etc. I’m following a few WP Trac tickets where I think I could actually fix the problem, but I don’t have time to figure out a new system.

Am I the only one who feels that way? Maybe WP is better off without “fly-by” committers like me, and a raised barrier to entry is a good thing? :smile: I’d love your thoughts, because I feel like a lazy bum sometimes.

I would honestly, not mind that. It would be interesting to see a lead dev’s side of this. It seems like it would make it easier, but there could be some major downsides lurking.

Calling Trac and Subversion a new system (new understood as something you had to learn because you were not familiar with SVN+Trac already) makes me feel old :frowning:

Yes, now I´m very confortable with GitHub and I do prefer the fork and pull model than using SVN to create a patch but for me Trac and SVN is not a barrier of entry, it´s just what I was already using before Git

You’re right - it’s not “new”, but it’s unfamiliar to lots of us who started with Git. Github has significantly removed the burden of learning a system to propose changes - you can do it straight from the browser.

You do bring up a good point, though. I’ve always assumed everyone knew Git these days, but that’s just my perception. Maybe Github would present a new/different barrier to people who find Trac/SVN easy to navigate?

I actually spent a great deal of time looking at IDE applications to find one that handled Git/SVN/etc. well enough so I wouldn’t need to worry about it. I would much rather focus on the code (and on rare occasion submitting a patch) and let the machine worry about how to make it friendly enough for the submission process to accept it.

This discussion comes up more often than you’d think. :wink:

As a user of both, I really do see the merits of git, but in the WordPress world, svn holds the greatest feature: developer experience.

All of the WordPress Core Developers, Core Contributors, and Plugin/Theme Developers (in the official directories) know svn. Many don’t know git. If you were to move all of WordPress development to git, you’d have to spend time teaching it to a lot of people, and I just don’t see that becoming a popular thing. :slight_smile:

It’s a similar argument to why WordPress is still in PHP and not (insert arguably newer/better language here), because everyone who contributes to WordPress knows PHP.

If there were to be a viable push to git, it would have to come from the Core Developers being frustrated with svn and seeing git as the only option, otherwise a move to git is unlikely to gain the traction it would need.

I most definitely would. A pull request is made in a snap… But manually messaging a developer with your code and hoping he will reply and make a patch is for a lot of people a barrier. Also managing issues if a lot easier… I would support it!

For creating patches: If you’re into the command line, simply use git diff — to be specific, git diff --no-prefix is ideal. This format is easily applied with patch, just like SVN diffs. For more, check out scribu’s post on contributing using git. Might also be a good time to plug grunt-patch-wordpress, a work in progress — help make it awesome, if you can.

Hello… you can submit patches via Git!

I’m just not sure I understand this (from the comments):

It’s still a read-only mirror. “For all practical purposes” was meant to apply to everyone but committers. So for the committers to these repos that want to use Git, you’ll still need to use git-svn, for the moment

It means you can pull and download the Git repository, it’s a mirror of the official SVN repository and duplicated every 15 minutes I believe. But you cannot make pull requests to it, as all patches/updates happen on SVN and Trac.

And on that note, I know Git about 100x better than I know SVN, so for me it would definitely be easier to submit pull requests on Github.

Based on comments, articles, and other discussions I’ve read, there appears to be a massive push to try and get WordPress to switch development to Git. However, I think that won’t happen anytime soon and the mirror is about the best you’ll get for awhile. Git brings a social aspect to software development, something SVN doesn’t appear to do.

What I think is most unfortunate is a handful of developers who would love to contribute to fixing WordPress core through Git but they can’t because it’s on SVN and they can’t do pull requests. Maybe one day :slight_smile:

1 Like

It is unfortunate, but maybe it’s just because I’m not motivated enough to learn the system that’s in place :smile:

Are you saying you can create a patch from git and submit that? Or that you can submit to the git mirror?

Just to clarify for others (correct me if I’m wrong): Patches can be created from git using the git-format-patch command, but these patches must still be submitted via the trac. Trying to use the github wordpress mirror will just result in an admin telling you that it’s just a mirror, use the trac.

I’ve run into this a number of times now, and I would happily contribute considerably more if it was on github (not just a git repo). I simply do not like the trac system. It feels so old and clunky. That being said, things like marking a pull-request for a release is not possible outside of tags (which might work). Not to be pessimistic, but I doubt it will ever transition (or at least any time remotely soon). Wordpress, while an awesome framework, doesn’t do anything quickly, and hates massive changes.

From what I understand, yes a patch can be made with git, but you do still need to use Trac.

http://scribu.net/wordpress/contributing-to-wordpress-using-github.html

Well… good news: Matt Mullenweg in the State of the Word 2014: "starting this year, you can submit a pull request to WordPress on Github and that will not go into a black hole.”

1 Like

Any update on the possibility of contributing to WordPress via GitHub? It is not yet possible