[webkit-dev] webkit-patch and git revisions (resolved)

Dirk Pranke dpranke at chromium.org
Thu Mar 8 13:09:06 PST 2012

Hi all,

I have just landed a change to webkit-patch that tweaks the -g
handling slightly as a result of the discussion in the thread from
last week. The patch in question is in
https://bugs.webkit.org/show_bug.cgi?id=76958 .

In short, I have added a new UPSTREAM "ref" that will resolve to the
tracking branch name, and I changed "<ref>...." to resolve to "diff
the working copy against <ref>". In particular, if you used "HEAD.."
before, you'll need "HEAD...." now - this make "HEAD.." no longer do
the opposite of what git does with that syntax ;). Otherwise,
webkit-patch should be unchanged (including other uses of -g).

In longer, more examples:

Assume you have a branch 'foo' with one commit 'commit1', and then a
branch 'bar' branched off of foo (using checkout -t -b foo)  with
another 'commit2', and then a local working copy with 'commit3':

webkit-patch -g foo  => git diff foo^..foo => (commit1), as before
webkit-patch -g foo.. => git diff foo..HEAD => (commit1, commit2)
webkit-patch -g foo.... => git diff foo => (commit1, commit2, commit3)
webkit-patch -g UPSTREAM => git diff foo^..foo => (commit1)  (since
foo is the upstream branch of bar, the current branch)
webkit-patch -g UPSTREAM.. => git diff foo^..HEAD
webkit-patch -g UPSTREAM.... => git diff foo => (commit1, commit2, commit3)

Note that -g foo is different from what 'git diff foo' would do; it
matches 'git cherry-pick foo' instead and is left this way to match
existing usage of webkit-patch.

Comments/questions/bugs welcome :).

-- Dirk

More information about the webkit-dev mailing list