monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Few remarks


From: Jérôme Marant
Subject: [Monotone-devel] Few remarks
Date: Wed, 01 Dec 2004 23:19:56 +0100
User-agent: Gnus/5.1007 (Gnus v5.10.7) Emacs/21.3 (gnu/linux)

Hi,

After praticing Monotone a bit, here are few remarks from
a user POV. Please correct me if I'm wrong.

1)

When importing a new tree into a fresh database with "add *",
a MT directory is only created in the top directory.
So, when walking through directories, I do lose information
about the database name and branch.

This is connected to files being identified by their full
path, so when adding a new file in some directory, you need
to "monotone add" it from the top directory of the tree if
you want it to have a correct location in the database.

How about doing the following:

Whenever a new directory is created, create a MT directory
inside providing the proper database name. An additional "level"
parameter would provide the path from the top directory.

Example:

monotone --db=/path/to/db add foo/bar/baz.c =>

foo/MT/options:

  level foo
  database /path/to/db

foo/bar/MT/options:

  level foo/bar
  database /path/to/db


The "level" parameter would allow operating on files from everywhere
with monotone able to build the full path with it.
So, commiting "foo.c" from foo/bar/ would properly add foo/bar/foo.c to
the database.

This would also imply that commits are recursive and scan all MT
directories along with consistency checks in case the file
has been added from multiple locations ...

2)

Using hashes as revision IDs is definitely not user friendly.
I know, it has already been mentioned in the FAQ, but even
a simple ancestry graph can show that it is not really
"human readable".
IMHO, a simple database-wide per-commit autoincremented integer
would be much nicer. It is even natural when using database,
AFAIK and SQLite does this.

Thanks for reading.

Best regards,

-- 
Jérôme Marant




reply via email to

[Prev in Thread] Current Thread [Next in Thread]