Subject: Re: Use case: GIT to manage transactions in a CMS?

From: "J. David Ibáñez" <[email-masked]>
Date: Fri, 17 Feb 2006 12:10:52 +0100

Andreas Ericsson wrote:

> J. David Ibáñez wrote:
>
>> Hello,
>>
>> I am working on a project (a content management system) where the data
>> is stored as files and folders.
>>
>> Currently, for persistance and transactions we use the ZODB [1] object
>> database. But our goal is to move away from the ZODB and use directly
>> the file system, as it will allow us to use all the good unix tools.
>>
>> We are using git to manage the source code. And now we are exploring git
>> to see if it can do the job of transactions, so that each transaction in
>> the system will be a git commit.
>>
>> One problem we have found is that we can not commit empty directories
>> (what
>> we need to do). Any idea how to solve or work-around this constraint?
>>
>
> $ touch empty/dir/.placeholder
>
>

I would like to have something better, no so much of a work-around.

Maybe I could hack something, are there some docs explaining the
internal format of git objects? or, where to look in the source to
find this info?

>> Any suggestions and input on this exotic use case for git will be very
>> welcomed.
>>

Another point, the application is written in Python, right now I
have to open a shell to run the git commands.

It would be nice if the core functionality was implemented in a C
library, then with a Python wrapper I could use git without going
through the shell.

Is this something to be expected? There will be a "libgit" sometime
in the future?

> Sounds cool. I'll have to give it a whirl when you've got something to
> show.
>

Probably I will have to hack something else to have ACID transactions,
in the short-term. But "git" is at least interesting, since it could
open a world of possibilities. If I ever have something to show, I will
tell you.

-- 
J. David Ibáñez
Itaapy <http://www.itaapy.com>         Tel +33 (0)1 42 23 67 45
9 rue Darwin, 75018 Paris              Fax +33 (0)1 53 28 27 88