Re: Core and Not-So Core
- From
Jon Seymour <jon.seymour@gmail.com>
- Date
- May 10, 2005, 23:20 UTC
- Message-ID
- <2cfc403205051016205d722f23@mail.gmail.com>
- In-Reply-To
- <20050510230844.GG26384@pasky.ji.cz>
On 5/11/05, Petr Baudis <pasky@ucw.cz> wrote:
Show 17 quoted lines
> Dear diary, on Wed, May 11, 2005 at 01:05:55AM CEST, I got a letter > where Jon Seymour <jon.seymour@gmail.com> told me that... > > > > I guess I agree it is somewhat nonsensical if one considers the > > current git toolset as a collection of programs - the exercise now > > might simply reduce to classifying git tools as > > index-using/non-index-using and nothing more. However, it might be > > worth keeping in mind when/if the "libification" of git happens so > > that there is a clean separation of layers in the API between the > > repository API and index/cache/workspace API. > > In that case the repository API's input/output is data structure > equivalent to the index, and workspace API's input/output is the index > too. That is what it really is - and it is kept on the disk only since > the commands are invoked separately so it needs to keep the state around > somewhere. >
Not sure I agree...
The repository API would contain functionality equivalent to cat-file, ls-tree, most of fsck-cache, rev-list, rev-tree, diff-tree, most of the transport code - things that don't involve use of the index.
The workspace API would contain read-tree, write-tree, commit-tree, etc - things that do involve use of the the index.
jon.