This is actually something quite simple, so simple in fact that there is not much documentation for it. Anyways, to make the patch:
diff -urN file.orig file.modified > file.patch
then to turn a copy of file.orig into file.modified
patch file.orig file.patch
And then file.orig is updated to match file.modified.
Update: Or you could just git.