This is what I do and it works:
You will want to create a "fork" of MinecraftForge on github in to your own user.
Clone your fork locally, install a new copy of it into MCP and install it.
Make change to the source.
Run the patch generator (do not remember the name, one of the files in the forge directory) and it will generate the patches needed.
Copy your patches and new files back into your clone and submit back to your forge fork.
Submit a pull request of your fork back to the main repo.
Lex may have an easier way, but I am not used to git forks being subparts of larger packages, and this works.