the-xkcd-community / the-red-spider-project

Coding and xkcd combined, for fun!
http://the-xkcd-community.github.com/the-red-spider-project
Other
40 stars 33 forks source link

Pull request assistant #73

Open jgonggrijp opened 10 years ago

jgonggrijp commented 10 years ago

I'm thinking of a program that can assist hackers who are working on a pull request. It should ensure that all necessary steps are taken and take as much work out of a hacker's hands as possible. It should be very friendly to make hackers feel appreciated. I suggest the name rsp-assistant. When a hacker runs the command it should do the following things, probably in this order:

Ideally rsp-assistant should be as contextualized as possible. For example, if it can read the configuration file of rsp-tutorial (see #72) to detect out what kind of contribution is being worked on (for example a bugfix), that can help to make the advice more specific. It may also be able to use the GitHub API to figure out whether the hacker has done a pull request yet.

Edit: I should mention that @mrhmouse and @firerogue deserve credit for this idea.

WesleyAC commented 10 years ago

I approve! However, I think that it shouldn't change any of the files automatically, rather it should use some diff tool to show what the file will change into, and have the hacker approve the change.

I think that the tool should also go to the point of making the pull request using info it gathered earlier in the process + info that the hacker gives it during the pull request.

jgonggrijp commented 10 years ago

Of course I agree the program should not just go ahead and change files without the hacker knowing about it. It should announce what it's going to do and what the change will look like. But it's convenient for the hacker if they only need to press enter to make it happen.

It would be very cool if the assistant could even automate the pull request, but I doubt whether that could be done with the GitHub API. After all somebody needs to be signed in to GitHub in order to do a pull request.

Edit: I read up on the GitHub API and it seems that automated pull requests should actually be possible!