Re: [RFC PATCH v2 06/12] submodule--helper: add a '--stage' option to the 'config' sub command
From: Antonio Ospite <hidden>
Date: 2018-08-06 10:58:37
On Fri, 03 Aug 2018 09:24:14 -0700 Junio C Hamano [off-list ref] wrote:
Antonio Ospite [off-list ref] writes:quoted
The rationale behind the change is to close the circle started with 04 and 05 and stop referring to .gitmodules explicitly by file path in git commands. The change is not strictly needed for the series, it's for consistency sake.Sorry, but I am still not quite sure what consistency you are referring to.
Hi Junio,
to recap: in previous patches we removed all instances of "git config
-f .gitmodules" (read/write operations), because in that case
encapsulating access to .gitmodules would directly enable us to add
new functionality (i.e.: read from HEAD:.gitmodules).
So, to me, it looked more organic to remove also the last explicit
reference to .gitmodules in git-submodule.sh ("git add -f .gitmodules",
the "stage" operation), even if in this case no new behavior about
staging is going to be added for the time being. that is: the change is
not strictly necessary.
The consistency I was referring to is merely in the mechanism used to
deal with .gitmodules: by always using "submodule--helper config".
As a side argument: in some previous discussion Stefan mentioned the
possibility that, in the future, he may be interested to explore
different locations for submodules configuration, like a special ref,
to prevent .gitmodules from being in the working tree at all, not even
for writing submodule configuration.
Having an opaque "stage submodule configuration" operation would
prepare for that too, but as I said this is not my immediate goal.
I also do not see a reason why we want to stop referring to .gitmodules explicitly by name. We do not hide the fact that in-tree .gitignore and .gitattributes files are used to hold the metainformation about the project tree, saying that it is an implementation detail. Is there a good reason why .gitmodules should be different from these other two?
Not sure about that, but one difference I can see between .gitignore/.gitattributes and .gitmodules is that I got the impression that editing the latter by hand is strongly discouraged, if that is indeed the case a layer of indirection can make sense IMHO to make the actual file path less relevant. Having said that I can drop patches 06/07 if this can help moving things forward; or if I had some success in convincing you I can improve the user interface (any advice?) and the commit message. Thank you, Antonio -- Antonio Ospite https://ao2.it https://twitter.com/ao2it A: Because it messes up the order in which people normally read text. See http://en.wikipedia.org/wiki/Posting_style Q: Why is top-posting such a bad thing?