From: Jiang Xin Date: Sat, 17 Oct 2015 12:46:51 GMT Subject: Re: submodule: allow submodule directory in gitignore Message-ID: In-Reply-To: <561B5372.7040508@gmail.com> 2015-10-12 14:30 GMT+08:00 Aleksey Komarov : > Hi all! > > I'm sorry if the letter came twice. I have troubles with my post client. > > I want to organize my repository so its submodules would be located at the root > of repository. I'm trying to create .gitignore to ignore all files and don't > ignore directories at the same time: > > $ cat .gitignore > * > !*/ > > Now, I'm trying to add a submodule to my repository, but fail to understand why > my .gitignore prevents it from being added. I use the following command to check > if my submodule will be ignored or not: > > $ git add --dry-run --ignore-missing c/ > > I have noticed that result of this check is different when directory c/ already > exists and when it still doesn't by the time of the check. > The described behavior is illustrated by the following example: > > $ mkdir git_test > $ cd git_test > $ git init > Initialized empty Git repository in D:/temp/git_test/.git/ > $ echo \* >> .gitignore > $ echo \!\*\/ >> .gitignore > $ git add --dry-run --ignore-missing c/ > The following paths are ignored by one of your .gitignore files: > c/ > Use -f if you really want to add them. > $ mkdir c > $ git add --dry-run --ignore-missing c/ > $ > To check how an entry (c/) is affected by .gitignore in different cases, you can try this command: $ git check-ignore -v c/