On Wed, Jan 27, 2010 at 16:51, Neels J Hofmeyr <ne...@elego.de> wrote: > Greg Stein wrote: >... >> and recall that BASE == what you checked out from the repository. >> WORKING corresponds to added/removed/copied/moved nodes. For nodes in > > Yes, I learnt this from Bert last week, and also that the current *...@base* > commandline keyword refers to the "copy_from" of the *WORKING* tree for all > the add-with-history schedules :)
I don't think it is advisable to try to make any correlation between the cmdline markers and the names that we use internally for the trees. >... >> the WORKING tree, revision will always be SVN_INVALID_REVNUM, and the >> repos_relpath/root_url will be NULL. > > Hadn't seen it that clear yet. > > But read_info fills up the revision, repos_relpath and root_url from the > BASE tree even when a node is present in the WORKING tree, right? > (read_info's comment sounds like it: > " * The information returned comes from the BASE tree, as possibly modified > * by the WORKING and ACTUAL trees. ") Sounds like the comment could/should be improved. > So when read_info returns a non-"empty" revision, repos_relpath or root_url, > then these values have definitely come from the BASE tree? Yes. > Does that mean the two calls that only ask status, revision, repos_relpath > and root_url, passing NULL for all other return-parameters, are in fact > perfectly identical? No. If you have both a BASE node and a WORKING node, then base_get_info will return data about the BASE node, and read_info will return NULL values. If there is no WORKING node, then yes: the two will be equivalent for those param values. Cheers, -g