On Mon, Mar 11, 2019 at 07:15:12PM +0100, Thomas Braun wrote: > Am 11.03.2019 um 12:58 schrieb Duy Nguyen: > > On Mon, Mar 11, 2019 at 10:48 AM Jeff King <peff@xxxxxxxx> wrote: > >> And AFAIK there is no good way to > >> modify the submodule-provided content as part of the build. Why do we > >> even have the submodule again? ;P > > > > Because of dogfooding of course. This is an interesting use case > > though. I wonder if people often want to "patch" submodules like this > > (and what we could do if that's the case) > > I usually do the following: > > - Fork the sub-project > - Add a branch with my proposed patches > - Update the URL and the commit of the submodule in the super-project > > This of course requires all users to do > > git submodule sync > > which is a bit incovenient, but works. The problem to me is not that the steps that a developer has to do, but rather that we are dependent on the upstream project to make a simple fix (which they may not agree to do, or may take a long time to do). Whereas if we import the content into our repo as a subtree, we are free to hack it up as we see fit, and then occasionally pull from upstream and reconcile the changes. Changing upstream isn't advisable in the general case, but I think makes a lot of sense for small changes (especially if you have the discipline to actually get the same or similar change pushed upstream). In this particular case, though, the sha1dc project is pretty responsive, so I don't think it's going to be a big deal. It just seems like an anti-pattern in general. -Peff