You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2018/10/04 16:07:13 UTC

svn commit: r1842827 - /subversion/trunk/subversion/svn/svn.c

Author: julianfoad
Date: Thu Oct  4 16:07:13 2018
New Revision: 1842827

URL: http://svn.apache.org/viewvc?rev=1842827&view=rev
Log:
Improve and expand 'svn help add'.

Hopefully this will make it clearer for novices, and especially to those
who are used to the different meaning of 'git add'.

With suggestions from stsp.

* subversion/svn/svn.c
  (svn_cl__cmd_table): Expand help for 'add'.

Modified:
    subversion/trunk/subversion/svn/svn.c

Modified: subversion/trunk/subversion/svn/svn.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/svn.c?rev=1842827&r1=1842826&r2=1842827&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/svn.c (original)
+++ subversion/trunk/subversion/svn/svn.c Thu Oct  4 16:07:13 2018
@@ -533,14 +533,34 @@ const int svn_cl__global_options[] =
 const svn_opt_subcommand_desc3_t svn_cl__cmd_table[] =
 {
   { "add", svn_cl__add, {0}, {N_(
-     "Put files and directories under version control, scheduling\n"
-     "them for addition to repository.  They will be added in next commit.\n"
+     "Put new files and directories under version control.\n"
      "usage: add PATH...\n"
+     "\n"), N_(
+     "Schedule unversioned PATHs for addition, so they will become versioned and\n"
+     "be added to the repository in the next commit. Recurse into directories by\n"
+     "default (see the --depth option).\n"
+     "\n"), N_(
+     "The 'svn add' command is only necessary for files and directories that are\n"
+     "not yet under version control. Unversioned files and directories can be\n"
+     "identified with 'svn status' (see 'svn help status').\n"
+     "\n"
+     "The effects of 'svn add' can be undone with 'svn revert' before the addition\n"
+     "has been committed. Once committed, a path can be removed from version\n"
+     "control with 'svn delete', and in some circumstances by running a reverse-\n"
+     "merge (see 'svn help merge' for details).\n"
+     "\n"), N_(
+     "With --force, add all the unversioned paths found in PATHs and ignore the\n"
+     "rest; otherwise, error out if any specified paths are already versioned.\n"
+     "\n"), N_(
+     "The selection of items to add may be influenced by the 'ignores' feature.\n"
+     "Properties may be attached to the items as configured by the 'auto-props'\n"
+     "feature.\n"
     )},
     {opt_targets, 'N', opt_depth, 'q', opt_force, opt_no_ignore, opt_autoprops,
      opt_no_autoprops, opt_parents },
     {{opt_parents, N_("add intermediate parents")},
-     {'N', N_("obsolete; same as --depth=empty")}} },
+     {'N', N_("obsolete; same as --depth=empty")},
+     {opt_force, N_("ignore already versioned paths")}} },
 
   { "auth", svn_cl__auth, {0}, {N_(
      "Manage cached authentication credentials.\n"