I updated some of my scripts to the latest workflow, thought I would share
them.

To take a cinnabar servo branch based on `tip`, and remove all changes
related to servo, run these two commands in succession:

   - git filter-branch --index-filter 'git reset @ servo && git checkout @
   -- servo' --prune-empty -f -- tip..
   - g rebase -i tip -x "git reset @^ servo && git checkout @^ -- servo &&
   git add -u servo && git commit --amend -C @"

I'm not sure why the second is necessary, the first one works for all
commits but the first in the series, and the second one is able to handle
that. Just the second one won't work because it will cause merge conflicts;
rebase -x needs to be able to make the commit before you modify it, while
filter-branch modifies commits in-progress.


I also have
https://gist.github.com/Manishearth/1d1da99296dbff10c003bd3db4bf6e58 for
quickly setting test expectations. You can just copy the error summary into
a file and feed it to the script, which will update all the relevant list
files.


-Manish Goregaokar
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to