Thomas Gummerer <t.gummerer@xxxxxxxxx> writes: > diff --git a/Documentation/glossary-content.txt b/Documentation/glossary-content.txt > index 023ca95e7c..53df6ecb0a 100644 > --- a/Documentation/glossary-content.txt > +++ b/Documentation/glossary-content.txt > @@ -287,6 +287,13 @@ This commit is referred to as a "merge commit", or sometimes just a > origin/name-of-upstream-branch, which you can see using > `git branch -r`. > > +[[def_overlay]]overlay:: > + Only update and add files to the working directory, but don't > + delete them, similar to how 'cp -R' would work. This is the > + default mode in a <<def_checkout,checkout>>. In contrast, > + no-overlay mode will also delete tracked files not present in > + the source, similar to 'rsync --delete'. > + At least the mention of "checkout" needs to be a lot tightened to clarify that it is talking about "checkout <pathspec>", aka "checking out files out of the index or a tree-ish", as opposed to "checking out a branch to work on it", as checking out a branch will not work in the overlay fashion. What's not in the newly checked out branch will disappear from the working tree. If readers happen to be not paying close attention to the fact that the difference between overlay and non-overlay is about the destination, "similar to how 'cp -R' would work" may not click to their minds. "similar to how 'cp -R' updates the contents in the destination directory" may avoid such a risk, albeit it might be a bit too verbose. I dunno. Thanks.