문제

How can I delete all files that are being ignored within a Subversion checkout? Effectively to bring it back to the equivalent of a pristine checkout.

도움이 되었습니까?

해결책

I use this script when I want to clean out a working copy. It removes all unknown and ignored files.

svn status --no-ignore | awk '$1=="?"||$1=="I" { print $2 }' | xargs -i rm -rf {}

다른 팁

If TortoiseSVN, you can Check for modifications, Show ignored files, right click and delete.

karoberts' solution doesn't work on Mac OS X (Snow Leopard). Neither does another command I found on a blog

I get

xargs: illegal option -- i

and

xargs: illegal option -- d

respectively.

This works on Mac (adapted from karoberts'):

svn status | awk '$1=="?"||$1=="I" { print $2 }' | xargs rm -rf

You may want to first reverse the ignore state of those files (ref How do I Unignore a file in TortoiseSVN? for details) and then you can delete and commit back the changes from your workspace methinks.

Here's another way of doing it.

svn status --no-ignore | grep "^[\?I]" | sed 's%^........%%' | xargs -d "\\n" rm -rv
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top