RB Patch
Review Request #3440 — Created Oct. 22, 2012 and submitted — Latest diff uploaded
RB Patch will download a patch based off a specific review request ID and apply the patch on the local machine. TODO: - I keep getting an error when post-review'ing my mercurial changes (after a hg commit). http://pastie.org/5455551 which prevents me from fully testing Mercurial, though it should work.
- All testing performed on dev server for controlled experiments. - Tested when user uses a specific revision id (--diff-revision) - Tested when user specifices own pX argument (--px) ** GIT ** Steps performed: 1. Made a new review request (with commit A) 2. Made some changes to local files 3. Git commit those changes (commit B) and updated the request to create a diff (between B and A) 4. On local drive, reverted to commit A 5. Ran 'rb patch <r>' and viewed the results and affected files. I did this for a positive and negative test. ** Mercurial ** Similar to Git. I am assuming there's no need for pX logic here, just like Git's apply patch. ** SVN ** Steps performed: 1. Made a new review request (with commit A) 2. Made some changes to local file(s)* 3. post-review a request to create a diff (between B and A) 4. On local drive, reverted to commit A 5. Ran 'rb patch <r>' and viewed the results and affected files. One or more file changes: - one file change (/trunk/file1.txt) - multiple file changes (/trunk/file1.txt and /trunk/file2.txt) and files in different subdirectories (e.g. /trunk/file1.txt, /trunk/a/file2.txt, /trunk/a/b/file3.txt) Sample directory cases #1: server: /trunk/a/b/c/file.txt local checked out: /../b (I just checked out from /trunk/a/b) patch applied from /b/, /b/c/ <-- all succeeded Sample directory cases #2: server: /trunk/a/b/c/file.txt local checked out: /trunk (I just checked out from /trunk) patch applied from trunk, /trunk/a/, trunk/a/b/, trunk/a/b/c/ <-- all succeeded -- Tested again with new changes made in rb-general branch (removal of extra options).