From d924586bee49552363fdcffa75fd8b9d724c8da1 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Wed, 14 Sep 2022 18:52:42 -0400 Subject: docs: note the automatic creation of gitignore in build directories --- docs/markdown/FAQ.md | 9 +++++++++ docs/markdown/Using-multiple-build-directories.md | 6 ++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/markdown/FAQ.md b/docs/markdown/FAQ.md index 1894f27ec..d3e3d0a10 100644 --- a/docs/markdown/FAQ.md +++ b/docs/markdown/FAQ.md @@ -683,3 +683,12 @@ executable( link_language : 'c', ) ``` + +## How do I ignore the build directory in my VCS? + +You don't need to, assuming you use git or mercurial! Meson >=0.57.0 will +create a `.gitignore` and `.hgignore` file for you, inside each build +directory. It glob ignores ```"*"```, since all generated files should not be +checked into git. + +Users of older versions of Meson may need to set up ignore files themselves. diff --git a/docs/markdown/Using-multiple-build-directories.md b/docs/markdown/Using-multiple-build-directories.md index 2e6fa740b..5086ddaf8 100644 --- a/docs/markdown/Using-multiple-build-directories.md +++ b/docs/markdown/Using-multiple-build-directories.md @@ -6,12 +6,14 @@ are placed in a separate subdirectory. This goes against common Unix tradition where you build your projects in-source. Building out of source gives two major advantages. -First of all this makes for very simple `.gitignore` files. In +First of all this makes for very simple VCS "ignore" files. In classical build systems you may need to have tens of lines of definitions, most of which contain wildcards. When doing out of source builds all of this busywork goes away. A common ignore file for a Meson project only contains a few lines that are the build directory -and IDE project files. +and IDE project files. (Note that since Meson 0.57.0, build directories +are automatically ignored for git and mercurial by generating an ignore +file inside the build directory.) Secondly this makes it very easy to clean your projects: just delete the build subdirectory and you are done. There is no need to guess -- cgit v1.2.3