Re: RFC: a plugin architecture for git extensions?
- From
Jon Seymour <jon.seymour@gmail.com>
- Date
- Apr 28, 2011, 02:15 UTC
- Message-ID
- <BANLkTikbcpzF203rUVB05OYyYhLmu3+n6w@mail.gmail.com>
- In-Reply-To
- <BANLkTimnkBMRH7Spj1ByQRa9YdV9w+bwtQ@mail.gmail.com>
Assuming for the moment that the concept of a managed plugin is accepted, then.
The relationship between distribution managers and the git-plugin architecture would be as follows:
- distributions would know how to locate the git instance it manages - distributions would know how to install their own packages that contain plugins into plugins/ subdirectory of this git instance - distributions would know how to run git plugin activate and properly handle non-zero return codes from same
make install scripts would act like a kind of distribution in this regard.
Now consider this:
* suppose that git-core defined a git install _interface contract_ but did not define an implementation.
Then, a distribution could install its own implementation of the git-install plugin into git installations it manages.
Then a command like:
git install gitwork
would trivially work across all distributions precisely because the distribution has provided the implementation of the git install interface contract that git-core has helpfully mandated.
jon.