Is there better documentation on how to submit changes to Github?

I’m looking for step by step instructions on how to submit an engine change to github and have it submitted as a pull request to Epic to consider. I’m apparently not very smart and these UI’s are very unfriendly for the uninitiated.

I’m using both the Github webpage and the github windows client. I have no idea if I’m doing it right. I’ve submitted a few pull requests, but did it wrong and tried to merge a release branch into a master branch (oops). If I try to merge a master branch into a master branch (as I think I’m supposed to do), then it says that there are no changes between the repositories. Whaaat? There’s gotta be changes because I made them! I made a fork of the engine and then modified the files on my local workstation. I think I’m supposed to push my local files up to my github fork repo? And then make a pull request to get my forked deltas to be included in the EpicGames/UnrealEngine:Master repo. Is that right? How do I do that? What’s the step by step work flow for this?

I also tried to use the windows client for github. I have no idea if it actually works. I am able to push a pull request with my changes, and they look right and appear to show up in the history, but I have no idea if they’re actually going through as an actual pull request or just sitting on my workstation waiting to be synched with the master repo. For some reason, the github client also seems to want to include changes to files I did not change: They mostly look like documentation files with a *.udn file extension. This happens after I try to do a synch with the epicgames/UnrealEngine:master repo. Obviously, I didn’t change those files and it thinks I did, so I don’t want to touch them.

Oddly, when I try to view my commit on github, I get a broken link which gives me a 404 error. If I look through the pull requests on the official master page, I don’t see any of the ones I submitted via the windows client.