Subject: [PATCH v2] git-svn: mention `svn:global-ignores` in help+docs

From: "Alex Galvin via GitGitGadget" <[email-masked]>
Date: Tue, 13 Aug 2024 19:55:46 +0000

From: Alex Galvin <[email-masked]>

Git-SVN was previously taught to use the svn:global-ignores attribute
as well as svn:ignore when creating or showing .gitignore files from a
Subversion repository. However, the documentation and help message
still only mentioned svn:ignore. This commit updates Git-SVN's
documentation and help command to mention support for the new attribute.

Signed-off-by: Alex Galvin <[email-masked]>
---
    git-svn: mention svn:global-ignores in help+docs

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1766%2Fav-gal%2Fgit-svn-doc-globalignores-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1766/av-gal/git-svn-doc-globalignores-v2
Pull-Request: https://github.com/git/git/pull/1766

Range-diff vs v1:

 1:  9850e80684f ! 1:  d0b5df150e9 git-svn: mention `svn:globalignores` in help+docs
     @@ Metadata
      Author: Alex Galvin <[email-masked]>
      
       ## Commit message ##
     -    git-svn: mention `svn:globalignores` in help+docs
     +    git-svn: mention `svn:global-ignores` in help+docs
      
     -    Git-SVN was previously taught to use the svn:globalignores attribute
     -    as well as svn:ignore when creating or showing .gitignore files from
     -    a Subversion repository. However, the documentation and help message
     +    Git-SVN was previously taught to use the svn:global-ignores attribute
     +    as well as svn:ignore when creating or showing .gitignore files from a
     +    Subversion repository. However, the documentation and help message
          still only mentioned svn:ignore. This commit updates Git-SVN's
     -    documentation and help command to mention the newly supported attribute.
     +    documentation and help command to mention support for the new attribute.
      
     -    Signed-off-by: Alex Galvin <[email-masked]>
     +    Signed-off-by: Alex Galvin <[email-masked]>
      
       ## Documentation/git-svn.txt ##
      @@ Documentation/git-svn.txt: Any other arguments are passed directly to 'git log'
     @@ Documentation/git-svn.txt: Any other arguments are passed directly to 'git log'
      -	creates matching .gitignore files. The resulting files are staged to
      -	be committed, but are not committed. Use -r/--revision to refer to a
      -	specific revision.
     -+	Recursively finds the svn:ignore and svn:globalignores properties on
     -+	directories and creates matching .gitignore files. The resulting
     ++	Recursively finds the svn:ignore and svn:global-ignores properties
     ++	on directories and creates matching .gitignore files. The resulting
      +	files are staged to be committed, but are not committed. Use
      +	-r/--revision to refer to a specific revision.
       
       'show-ignore'::
      -	Recursively finds and lists the svn:ignore property on
      -	directories.  The output is suitable for appending to
     -+	Recursively finds and lists the svn:ignore and svn:globalignores
     ++	Recursively finds and lists the svn:ignore and svn:global-ignores
      +	properties on directories. The output is suitable for appending to
       	the $GIT_DIR/info/exclude file.
       
     @@ Documentation/git-svn.txt: Tracking and contributing to the trunk of a Subversio
       # as well as automatically updating your working HEAD:
       	git svn dcommit
      -# Append svn:ignore settings to the default Git exclude file:
     -+# Append svn:ignore and svn:globalignores settings to the default Git exclude file:
     ++# Append svn:ignore and svn:global-ignores settings to the default Git exclude file:
       	git svn show-ignore >> .git/info/exclude
       ------------------------------------------------------------------------
       
     @@ git-svn.perl: my %cmd = (
       			{ 'stdin' => \$_stdin, %cmt_opts, %fc_opts, } ],
       	'create-ignore' => [ \&cmd_create_ignore,
      -			     'Create a .gitignore per svn:ignore',
     -+			     'Create a .gitignore per directory with svn:ignore and svn:globalignores',
     ++			     "Create a .gitignore per directory with an SVN ignore property",
       			     { 'revision|r=i' => \$_revision
       			     } ],
       	'mkdirs' => [ \&cmd_mkdirs ,
     +-	              "recreate empty directories after a checkout",
     ++	              "Recreate empty directories after a checkout",
     + 	              { 'revision|r=i' => \$_revision } ],
     +         'propget' => [ \&cmd_propget,
     + 		       'Print the value of a property on a file or directory',
      @@ git-svn.perl: my %cmd = (
               'proplist' => [ \&cmd_proplist,
       		       'List all properties of a file or directory',
       		       { 'revision|r=i' => \$_revision } ],
      -	'show-ignore' => [ \&cmd_show_ignore, "Show svn:ignore listings",
     -+	'show-ignore' => [ \&cmd_show_ignore, "Show svn:ignore and svn:globalignores listings",
     ++	'show-ignore' => [ \&cmd_show_ignore, "Show .gitignore patterns from SVN ignore properties",
       			{ 'revision|r=i' => \$_revision
       			} ],
       	'show-externals' => [ \&cmd_show_externals, "Show svn:externals listings",

 Documentation/git-svn.txt | 14 +++++++-------
 git-svn.perl              |  6 +++---
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt
index 43c68c2ec44..bcf7d84a87d 100644
--- a/Documentation/git-svn.txt
+++ b/Documentation/git-svn.txt
@@ -431,14 +431,14 @@ Any other arguments are passed directly to 'git log'
 	independently of 'git svn' functions.
 
 'create-ignore'::
-	Recursively finds the svn:ignore property on directories and
-	creates matching .gitignore files. The resulting files are staged to
-	be committed, but are not committed. Use -r/--revision to refer to a
-	specific revision.
+	Recursively finds the svn:ignore and svn:global-ignores properties
+	on directories and creates matching .gitignore files. The resulting
+	files are staged to be committed, but are not committed. Use
+	-r/--revision to refer to a specific revision.
 
 'show-ignore'::
-	Recursively finds and lists the svn:ignore property on
-	directories.  The output is suitable for appending to
+	Recursively finds and lists the svn:ignore and svn:global-ignores
+	properties on directories. The output is suitable for appending to
 	the $GIT_DIR/info/exclude file.
 
 'mkdirs'::
@@ -871,7 +871,7 @@ Tracking and contributing to the trunk of a Subversion-managed project
 # Now commit your changes (that were committed previously using Git) to SVN,
 # as well as automatically updating your working HEAD:
 	git svn dcommit
-# Append svn:ignore settings to the default Git exclude file:
+# Append svn:ignore and svn:global-ignores settings to the default Git exclude file:
 	git svn show-ignore >> .git/info/exclude
 ------------------------------------------------------------------------
 
diff --git a/git-svn.perl b/git-svn.perl
index a2a46608c9b..d8dc485e50d 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -219,11 +219,11 @@ my %cmd = (
 	                "Set an SVN repository to a git tree-ish",
 			{ 'stdin' => \$_stdin, %cmt_opts, %fc_opts, } ],
 	'create-ignore' => [ \&cmd_create_ignore,
-			     'Create a .gitignore per svn:ignore',
+			     "Create a .gitignore per directory with an SVN ignore property",
 			     { 'revision|r=i' => \$_revision
 			     } ],
 	'mkdirs' => [ \&cmd_mkdirs ,
-	              "recreate empty directories after a checkout",
+	              "Recreate empty directories after a checkout",
 	              { 'revision|r=i' => \$_revision } ],
         'propget' => [ \&cmd_propget,
 		       'Print the value of a property on a file or directory',
@@ -234,7 +234,7 @@ my %cmd = (
         'proplist' => [ \&cmd_proplist,
 		       'List all properties of a file or directory',
 		       { 'revision|r=i' => \$_revision } ],
-	'show-ignore' => [ \&cmd_show_ignore, "Show svn:ignore listings",
+	'show-ignore' => [ \&cmd_show_ignore, "Show .gitignore patterns from SVN ignore properties",
 			{ 'revision|r=i' => \$_revision
 			} ],
 	'show-externals' => [ \&cmd_show_externals, "Show svn:externals listings",

base-commit: cabe67c0d1819fd1e33079e92615c6c7a3dc560d
-- 
gitgitgadget