Bug 28603
Summary: | webkit-patch commit-queue needs to delete files from failed patches (like git clean -f would) | ||
---|---|---|---|
Product: | WebKit | Reporter: | Eric Seidel (no email) <eric> |
Component: | Tools / Tests | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | abarth, kbr, mjs |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | OS X 10.5 |
Eric Seidel (no email)
Turds from failed rebases before can cause errors:
error: Untracked working tree file 'WebCore/storage/SQLTransactionClient.cpp' would be overwritten by merge.
could not detach HEAD
rebase refs/remotes/trunk: command returned error: 1
Logging in as eric@webkit.org...
Rejecting patch 34895 from commit-queue. This patch will require manual commit.
Failed to run "['git', 'svn', 'rebase']" exit_code: 1 cwd: None
ERROR: Failed to run "['git', 'svn', 'rebase']" exit_code: 1 cwd: None
Doing 'git clean -f' is really scary, but we need to do it to make the bot run nice...
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Adam Barth
commit-queue is scary. Let loose the dogs of war! git clean -f --for-realz-now
Eric Seidel (no email)
LayoutTests getting left around are particularly bad. When running the commit-queue from an SVN checkout any failed patch will leave any added files around. If those added files were layout tests, all patches after that one will start failing!
Eric Seidel (no email)
Just saw this again with https://bugs.webkit.org/show_bug.cgi?id=32995#c5
Eric Seidel (no email)
This is the worst bug affecting the commit-queue now that it's running from an SVN checkout. I'll have to bump this up on my priority list.
Adam Barth
How are you going to run git clean -f from an SVN checkout?
Eric Seidel (no email)
A possibly related failure:
https://bugs.webkit.org/show_bug.cgi?id=32919#c26
Kenneth Russell
How about "svn revert -R ." from the root of the tree?
Eric Seidel (no email)
This has caused enough commit-queue failures that I'm going to move the commit-queue back to using Git for now. I'll bump this bug up on my list of bugs to fix.
Eric Seidel (no email)
@kbr: svn revert -R is already done. git clean -f actually deletes untracked files. We'll ahve to write an SVN equivalent.
Kenneth Russell
Would this do it?
svn status | grep ^\? | awk '{print $2}' | xargs rm -rf
Eric Seidel (no email)
Yes. We even have code like this already in scm.py, it just needs to all be wired together into some sort of remove_untracked_files() method on SCM implementations.
For an example of status-parsing logic see run_status_and_extract_filenames and callers:
http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/webkitpy/scm.py#L135