I'm new to reviewboard, so maybe I have totally the wrong idea. My org uses svn, but I'm using git-svn. I have a chain of commits in my git repos, and I want to post them as separate review requests, but I can't seem to get post-review to do this.
My git repos looks like this: O <-- change-3 | O <-- change-2 | O <-- change-1 | O <-- master <-- remotes/trunk I want to be able to do something like: git checkout change-3 post-review --parent=change-2 and post a diff between change-2 and change-3 for review (ideally, just saying "post-review HEAD^ HEAD" would be even better), even though the repository from reviewboard's point of view is SVN. I've seen some discussion that seems to suggest that this ought to work: http://groups.google.com/group/reviewboard/browse_thread/thread/3423e2c8f71c5c3a?pli=1 but it doesn't for me :(. It appears I'm getting empty diffs? $ git checkout change-3 $ post-review --parent=change-2 Traceback (most recent call last): File "/usr/local/bin/post-review", line 8, in <module> load_entry_point('RBTools==0.2', 'console_scripts', 'post-review') () File "build/bdist.linux-x86_64/egg/rbtools/postreview.py", line 2861, in main File "build/bdist.linux-x86_64/egg/rbtools/postreview.py", line 2554, in tempt_fate File "build/bdist.linux-x86_64/egg/rbtools/postreview.py", line 503, in upload_diff TypeError: object of type 'NoneType' has no len() $ post-review --parent=change-2 --output-diff --tracking-branch=trunk -d >>> svn info >>> git rev-parse --git-dir >>> git symbolic-ref -q HEAD >>> git svn info >>> repository info: Path: https://dev.pluggd.com/svn, Base path: >>> /frontend/HtmlClient/Player/trunk, Supports changesets: False >>> git config --get reviewboard.url >>> git merge-base change-2 refs/heads/change-3 >>> git diff --no-color --no-prefix -r -u change-2.. >>> git svn find-rev change-2 >>> git diff --no-color --no-prefix -r -u >>> dae96a154b9f395a9945b833973654d813ea8e5f..change-2 >>> git svn find-rev dae96a154b9f395a9945b833973654d813ea8e5f None dae96a.. is change-2, so it makes sense that the diff is empty. It should also be noted that the "git svn find-rev change-2" doesn't return anything, since change-2 isn't in svn. As a last thrash, I tried modifying postreview.py's GitClient.make_svn_diff, and added: if not rev: rev = execute(["git", "svn", "find-rev", options.tracking]).strip() after the first line that tries to find the parent's svn rev. This makes post-review generate the right diff! But if I post it to review board, I can't view it, presumably because it's trying to apply it against the version in svn. Here I gave up. Is there a solution? -- Want to help the Review Board project? Donate today at http://www.reviewboard.org/donate/ Happy user? Let us know at http://www.reviewboard.org/users/ -~----------~----~----~----~------~----~------~--~--- To unsubscribe from this group, send email to reviewboard+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/reviewboard?hl=en