2
* revert-cmd.c -- Subversion revert command
4
* ====================================================================
5
* Copyright (c) 2000-2004 CollabNet. All rights reserved.
7
* This software is licensed as described in the file COPYING, which
8
* you should have received as part of this distribution. The terms
9
* are also available at http://subversion.tigris.org/license-1.html.
10
* If newer versions of this license are posted there, you may use a
11
* newer version instead, at your option.
13
* This software consists of voluntary contributions made by many
14
* individuals. For exact contribution history, see the revision
15
* history and logs, available at http://subversion.tigris.org/.
16
* ====================================================================
19
/* ==================================================================== */
25
#include "svn_client.h"
26
#include "svn_error.h"
29
#include "svn_private_config.h"
34
/* This implements the `svn_opt_subcommand_t' interface. */
36
svn_cl__revert (apr_getopt_t *os,
40
svn_cl__opt_state_t *opt_state = ((svn_cl__cmd_baton_t *) baton)->opt_state;
41
svn_client_ctx_t *ctx = ((svn_cl__cmd_baton_t *) baton)->ctx;
42
apr_array_header_t *targets;
45
SVN_ERR (svn_opt_args_to_target_array2 (&targets, os,
46
opt_state->targets, pool));
48
/* Revert has no implicit dot-target `.', so don't you put that code here! */
50
return svn_error_create (SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
52
if (! opt_state->quiet)
53
svn_cl__get_notifier (&ctx->notify_func2, &ctx->notify_baton2, FALSE,
56
err = svn_client_revert (targets, opt_state->recursive, ctx, pool);
58
if (err && (err->apr_err == SVN_ERR_WC_NOT_LOCKED))
60
err = svn_error_quick_wrap
61
(err, _("Try 'svn revert --recursive' instead?"));