You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Julian Foad <ju...@btopenworld.com> on 2008/04/04 14:43:36 UTC
Understanding the delta editor's set_target_revision()
Can anyone shed light on the meaning and purpose of "set_target_revision()" in
the delta editor?
I'm just trying to understand this for tree-conflicts work, as it might be
relevant for helping to detect whether the working copy being edited matches
the merge-left source.
[[[
--- subversion/include/svn_delta.h (revision 30178)
typedef struct svn_delta_editor_t
{
/** Set the target revision for this edit to @a target_revision. This
* call, if used, should precede all other editor calls.
+ * ### What's a "target revision"? Why is it implicitly optional?
*/
svn_error_t *(*set_target_revision)(void *edit_baton,
svn_revnum_t target_revision,
apr_pool_t *pool);
@@ -754,17 +755,19 @@ typedef struct svn_delta_editor_t
/** We are going to make changes in a subdirectory (of the directory
* identified by @a parent_baton). The subdirectory is specified by
* @a path. The callback must store a value in @a *child_baton that
* should be used as the @a parent_baton for subsequent changes in this
* subdirectory. If a valid revnum, @a base_revision is the current
+ * ### "current" means what?
* revision of the subdirectory.
+ * ### ... to be used only for sanity checking (?)
*
* Allocations for the returned @a child_baton should be performed in
* @a dir_pool. It is also typical to (possibly) save this pool for later
* usage by @c close_directory.
*/
svn_error_t *(*open_directory)(const char *path,
void *parent_baton,
svn_revnum_t base_revision,
]]]
Thanks for any help.
- Julian
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Understanding the delta editor's set_target_revision()
Posted by Ben Collins-Sussman <su...@red-bean.com>.
On Fri, Apr 4, 2008 at 9:57 AM, C. Michael Pilato <cm...@collab.net> wrote:
> Julian Foad wrote:
>
> > Can anyone shed light on the meaning and purpose of
> "set_target_revision()" in the delta editor?
> >
> > I'm just trying to understand this for tree-conflicts work, as it might be
> relevant for helping to detect whether the working copy being edited matches
> the merge-left source.
> >
>
> set_target_revision() is how the server tells the client which revision it
> is transmitting as part of an update, switch, etc. I don't think it is used
> in the client->server direction at all.
Mike is right. It's one of the few asymmetries in the editor vtable.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Understanding the delta editor's set_target_revision()
Posted by "C. Michael Pilato" <cm...@collab.net>.
Julian Foad wrote:
> Can anyone shed light on the meaning and purpose of
> "set_target_revision()" in the delta editor?
>
> I'm just trying to understand this for tree-conflicts work, as it might
> be relevant for helping to detect whether the working copy being edited
> matches the merge-left source.
set_target_revision() is how the server tells the client which revision it
is transmitting as part of an update, switch, etc. I don't think it is used
in the client->server direction at all.
--
C. Michael Pilato <cm...@collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand