On Wed, 2014-08-20 at 06:50 +0200, Magnus Therning wrote: > Is there a specific reason you aren't using a separate build > directory? (AFAIU this is the convention for CMake.)
Historical precedence. People are used to doing in-source builds and some of our scripting for making releases, etc. expects to find things in those places. I completely agree that it would be great to move to an out-of-source build as the default but that's a larger project. In any event, this question is more abstract, summed up by this: > > Does it seem incorrect to anyone else that "git clean -X" doesn't delete > > all the files in your workspace that are considered ignored by "git > > status"? > How does `git clean -fdx` behave? It does clean up these files... plus more as below. > I've never really understood the difference between -x and -X, but > I've always used only -x and it behaves exactly the way I expect it > to. According to the docs (and this seems true to me), -X removes all files matched by .gitignore (except, in my case, not) while -x removes all ignored files AND all untracked files [*]. The thing about -x is you could lose work; if you had a new file that you hadn't gotten around to "git add"'ing, or you had a log file that you still wanted to look at but wasn't matched by a .gitignore line, etc. then "-x" will delete it while "-X" does not. The "-X" flag only deletes things that you've explicitly marked (via .gitignore) as ignorable, but leaves things it isn't sure about (untracked files) alone. [*] Technically what it does is pretend there's no .gitignore file, so that all ignored files become untracked, then delete all untracked files. -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
