From: Stefan Beller Date: Fri, 07 Oct 2016 17:25:04 GMT Subject: Re: [PATCH 1/2] submodule add: extend force flag to add existing repos Message-ID: In-Reply-To: <20161007125239.GB61543@book.hvoigt.net> On Fri, Oct 7, 2016 at 5:52 AM, Heiko Voigt wrote: > On Thu, Oct 06, 2016 at 01:11:20PM -0700, Junio C Hamano wrote: >> Stefan Beller writes: >> >> > Currently the force flag in `git submodule add` takes care of possibly >> > ignored files or when a name collision occurs. >> > >> > However there is another situation where submodule add comes in handy: >> > When you already have a gitlink recorded, but no configuration was >> > done (i.e. no .gitmodules file nor any entry in .git/config) and you >> > want to generate these config entries. For this situation allow >> > `git submodule add` to proceed if there is already a submodule at the >> > given path in the index. > > Is it important that the submodule is in the index? If it is not in the index, it already works. > How about worktree? > From the index entry alone we can not deduce the values anyway. Right, but as of now this is the only show stopper, i.e. * you have an existing repo? -> fine, it works with --force * you even ignored that repo -> --force knows how to do it. * you already have a gitlink -> Sorry, you're out of luck. So that is why I stressed index in this commit message, as it is only about this case. > > [1] http://public-inbox.org/git/%3C20160916141143.GA47240@book.hvoigt.net%3E/ Current situation: > clone the submodule into a directory > git submodule add --force > git commit everything works fine, but: > clone the submodule into a directory > git add > git commit -m "Add submodule" > # me: "Oh crap! I did forget the configuration." > git submodule add --force > # Git: "It already exists in the index, I am not going to produce the config for you." The last step is changed with this patch, as it will just work fine then.