init-db: check template and repository format.
commit4f629539cd99fb9fc68dbdc56812f291565d0f87
authorJunio C Hamano <junkio@cox.net>
Sat, 26 Nov 2005 00:03:56 +0000 (25 16:03 -0800)
committerJunio C Hamano <junkio@cox.net>
Sun, 27 Nov 2005 09:32:59 +0000 (27 01:32 -0800)
treebcc44b56add5e3dd2be9cbe187c9b99e9c153185
parent1644162ad53da1d0107c5c45c866e75ef95660bb
init-db: check template and repository format.

This makes init-db repository version aware.

It checks if an existing config file says the repository being
reinitialized is of a wrong version and aborts before doing
further harm.

When copying the templates, it makes sure the they are of the
right repository format version.  Otherwise the templates are
ignored with an warning message.

It copies the templates before creating the HEAD, and if the
config file is copied from the template directory, reads it,
primarily to pick up the value of core.symrefsonly.

It changes the way the result of the filemode reliability test
is written to the configuration file using git_config_set().
The test is done even if the config file was copied from the
templates.

And finally, our own repository format version is written to the
config file.

Signed-off-by: Junio C Hamano <junkio@cox.net>
cache.h
config.c
init-db.c