# # # patch "monotone.texi" # from [91610b6c09d538cdbb94fc0744496206280ccf9b] # to [b281e19b468a9cd2eedfc46a1419317f92e43b0a] # ============================================================ --- monotone.texi 91610b6c09d538cdbb94fc0744496206280ccf9b +++ monotone.texi b281e19b468a9cd2eedfc46a1419317f92e43b0a @@ -4837,12 +4837,14 @@ @section Tree The clone command is a helper command that performs the roles of a number of other commands all at once. Firstly, it constructs a new -database. It then populates this database by @command{pull}ing any data +database. If no database is given, the configured default +database is created or re-used (see the hook address@hidden in the @ref{Lua Reference} for +more details). Then it populates this database by @command{pull}ing any data in the branch @var{branchname} from the remote database, @var{address}. Finally, it copies the files out of the newly created database into a local directory, just as @command{checkout} would. If no @var{directory} -is given, the @var{branchname} is used as directory. The created -database is placed in the new workspace as @address@hidden/_MTN/mtn.db}. +is given, the @var{branchname} is used as directory. @item mtn disapprove @var{id} @@ -5108,18 +5110,21 @@ @section Workspace @section Workspace @ftable @command address@hidden mtn setup address@hidden address@hidden mtn setup -b @var{branchname} [-d @var{database}] address@hidden This command prepares @var{directory} as a monotone workspace, by creating and populating the @file{_MTN} directory with basic -information. This information must include at least the branch and the -database to be used, both of which will be placed in the +information. This information must include at least the branch +to be used. If no database is given, the configured default +database is created or re-used (see the hook address@hidden in the @ref{Lua Reference} for +more details). +Both settings, branch and database name, will be placed in the @file{_MTN/options} file. This can be used with an empty directory to start a new blank project, or within an existing directory full of files, prior to using @command{mtn commit}. If no directory is specified, the current -directory is used. If no database is given, a new database is -initialized and saved to @file{_MTN/mtn.db}. +directory is used. @item mtn add [--recursive | -R] [--no-respect-ignore] @var{pathname...} @item mtn add [--recursive | -R] [--no-respect-ignore] --unknown address@hidden @@ -10723,6 +10728,26 @@ @subsection User Defaults @end group @end smallexample address@hidden get_default_database_locations () + +Returns a table of existing paths where monotone should look for +managable databases. The command @command{list databases} searches +all these paths for valid monotone databases and outputs details on +each one. + +The default implementation returns a table with a single entry, address@hidden/databases}, in the user's home directory. + address@hidden get_default_database_alias () + +Returns the alias of the managed database which should be used as default +for commands like @command{clone} or @command{setup} if these are missing +an explicit database option. This alias and the first path found in the address@hidden hook form the complete path +of this default database. + +The default implementation returns @code{:default.mtn}. + @item edit_comment (@var{user_log_message}) Returns a log entry for a given set of changes, described in