On Tue, Feb 7, 2017 at 7:07 AM, Cornelius Weig <cornelius.weig@xxxxxxxxxxx> wrote: > On 02/07/2017 03:17 PM, Hongyi Zhao wrote: >> Hi all, >> >> In order to delete all of the last build stuff, does the following two >> methods equivalent or not? >> >> ``git clean -xdf'' and ``make clean'' > > No, it is not equivalent. > > * `make clean` removes any build-related files (assuming that the > `clean` target is properly written). To see exactly what it would do, > run `make clean -n`. Judging from your question, I think this is what > you want to do. > > * `git clean -xdf` would remove any files that git does not track. This > also includes build-related files, but also any other files that happen > to be in your working directory. For example, any output from `git > format-patch` would be removed by this, but not `make clean`. Make clean can run arbitrary code, and really depends on the implementation. git clean -xdf will result in all non-tracked files being removed, which should restore you to a pristine pre-build state. However, this can have unfortunate side effect of destroying files which you might not expect. Properly written, a make clean shouldn't remove anything except what could be regenerated by make. But that's just a strong convention. Regards, Jake