Show 20 quoted lines
> Johannes Sixt <j.sixt@viscovery.net> writes:
>
>> The "problem" is not only with git-clean, but also in others, like
>> git-ls-files. Try this in you favorite repository:
>>
>> $ git ls-files -o /*bin
>>
>> The output does not make a lot of sense. (Here it lists the contents of
>> /bin and /sbin.) Not that it hurts with ls-files, but
>>
>> $ git clean -f /
>>
>> is basically a synonym for
>>
>> $ rm -rf /
>
> Yeah, /*bin is not inside the repository so it should not even
> be reported as "others". Shouldn't the commands detect this and
> reject feeding such paths outside the work tree to the core,
> which always expect you to talk about paths inside?
That's what I had expected. But look:
$ git ls-files -o /
[... tons of file names ...]
$ git ls-files -o ..
fatal: '..' is outside repository
$ git clean -n / # with Shawn's patch
Would remove /bin/
[... etc ...]
$ git clean -n ..
fatal: '..' is outside repository
Some mechanism for this is already there; it's just not complete enough.
-- Hannes