Hi Karan, Unfortunately, it doesn't work like that. The diff has to be generated client-side with knowledge of the tracking branch. We don't take information like the tracking branch server-side and use it to figure out how to apply/verify the diff. Rather, that information must be part of the diff computation.
Let's go through some examples. When you do: $ post-review --tracking-branch=origin/foo What you are really doing is: $ git diff origin/foo..HEAD You're generating a diff with all changes between the tracking branch and the top-most commit. At no point does the server know about any details of those branches, because it wouldn't matter. All it knows is the files changed, the source revisions (which are computed when doing a `git diff` like above), and the changes made between those revisions. So it sounds like you need to make sure any diff you generate through egit is between a range of <some pushed branch>..HEAD. One more thing that's important is that the resulting diffs *must* display full SHA1s. `git diff` doesn't do this by default. Instead, it shows shortened (usually 7 character) SHA1s. This is typically solved by passing --full-index to `git diff`. I don't know egit at all, so I can't say if there are equivalent options. Christian -- Christian Hammond - chip...@chipx86.com Review Board - http://www.reviewboard.org VMware, Inc. - http://www.vmware.com On Feb 16, 2013, at 7:13 PM, Karan Jain <karanjain.it...@gmail.com> wrote: > Not sure if I understood it correctly. > > I'm using egit plugin with eclipse and I have cloned the particular branch > 'dev' into my working copy. Now, after making changes I create a diff. Hence, > while creating diff I have ensured that the branch was 'dev'. Now when I try > to upload it through the UI, it gives an error saying the file not present > (probably because it is trying to get the HEAD of master and applying a diff > of dev branch to generate new revision) > > Hence, should there not be any setting while uploading a diff as to mentioned > the target-branch of the repo it should try to apply the patch to? > > -Karan > > > On Sun, Feb 17, 2013 at 8:29 AM, Christian Hammond <chip...@chipx86.com> > wrote: > There is no such way. It must be done at diff generation time, because we > need an accurate diff of exactly what you want to display, and that cannot be > computed on the server. > > This is especially true for Git, because Git's protocol does not allow us to > do anything complex (like generate a diff) with a remote repository without > having a full, up-to-date clone of it, which Review Board does not do (there > are many very good reasons for this). > > Christian > > -- > Christian Hammond - chip...@chipx86.com > > Review Board - http://www.reviewboard.org > VMware, Inc. - http://www.vmware.com > > On Feb 16, 2013, at 6:51 PM, Karan Jain <karanjain.it...@gmail.com> wrote: > >> Thanks Chris. You are correct, I would be able to achieve what I want to >> with either --parent or --tracking-branch option. >> >> What I'm looking for is how to specify these options via UI and not using >> post-review. The reason is this - >> I have deployed the RB portal on a server and many people would be accessing >> it via browser. Hence, asking everyone to install post-review tool would >> actually not be a good option. So, looking for a way to do it through Admin >> UI for each repository. >> >> -Karan >> >> On Sunday, February 17, 2013 3:18:13 AM UTC+5:30, Christian Hammond wrote: >> Hi, >> >> Is the dev branch pushed upstream, or is it local to your repository? >> >> When working with Git, there are three branches to keep in mind: >> >> 1) The branch containing your change. >> 2) The parent branch, if any, that your branch derives from. >> 3) The tracking branch (origin/master, origin/dev, whatever is upstream that >> your branch is eventually derived from). >> >> The tracking branch defaults to origin/master. By default, any diff >> generated will be between the tracking branch and HEAD. >> >> If you have a different tracking branch (let's say origin/release), then you >> can pass --tracking-branch=<branchname> to it. >> >> If you have a branch based on another (unpushed) branch, you'd want to >> specify that branch as your branch's parent, using --parent=<branchname> >> >> In a simple setup, you'd have a branch off of origin/master, and all you >> would need to do is run "post-review" on it. >> >> In a more complex case where your branch looks like: >> >> origin/dev >> | >> |- my-parent >> | >> |- my-branch >> >> You would checkout my-branch and do: >> >> post-review --tracking-branch=origin/dev --parent=my-parent >> >> You can add the default for the tracking branch to your .reviewboardrc: >> >> TRACKING_BRANCH = 'origin/dev' >> >> Hope that gives you a good overview of how you might handle this. Without >> knowing your branching setup better, it's hard for me to give a more >> specific example. >> >> Christian >> >> -- >> Christian Hammond - chi...@chipx86.com >> Review Board - http://www.reviewboard.org >> VMware, Inc. - http://www.vmware.com >> >> >> On Sat, Feb 16, 2013 at 8:19 AM, Karan Jain <karanja...@gmail.com> wrote: >> Hello, >> >> We are using Github Enterprise version for our organization. I was trying to >> add a repository and was able to do so successfully. I chose - >> >> Hosting service - None (Custom Repository) >> Repository type - Git >> >> Now my working branch name is dev and not master. I wish to upload a review >> request on the dev branch. How can I do that? >> >> If I try to upload it says that the file is not present in the repo which >> means it is trying to look up in master branch where the file has not yet >> been checked in. However, the file is present in the 'dev' branch and the >> review request needs to be created on this branch. >> >> -- >> Karan Jain >> >> -- >> 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...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/reviewboard?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "reviewboard" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to reviewboard...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> >> >> -- >> 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 >> --- >> You received this message because you are subscribed to the Google Groups >> "reviewboard" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to reviewboard+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> > > > -- > 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 > --- > You received this message because you are subscribed to the Google Groups > "reviewboard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to reviewboard+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > > > > > -- > Karan Jain > > -- > 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 > --- > You received this message because you are subscribed to the Google Groups > "reviewboard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to reviewboard+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > -- 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 --- You received this message because you are subscribed to the Google Groups "reviewboard" group. To unsubscribe from this group and stop receiving emails from it, send an email to reviewboard+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.