-
Notifications
You must be signed in to change notification settings - Fork 26.6k
git-svn: mention svn:global-ignores
in help+docs
#1766
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
88a502c
to
9850e80
Compare
/submit |
Submitted as pull.1766.git.git.1723500383989.gitgitgadget@gmail.com To fetch this version into
To fetch this version to local tag
|
On the Git mailing list, Junio C Hamano wrote (reply to this): "Alex Galvin via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: Alex Galvin <alex.v.galvin@gmail.com>
>
> 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
> still only mentioned svn:ignore. This commit updates Git-SVN's
> documentation and help command to mention the newly supported attribute.
Thanks for tying these loose ends. Very much appreciated.
> @@ -219,7 +219,7 @@ 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 svn:ignore and svn:globalignores',
I do not know how likely it is that Subversion gains even more
sources of exclusion data in the future, but it makes me wonder if a
phrase like "Create a .gitignore file from ignore properties of svn"
so that we do not have to muck with the message. Presumably those
who do use this feature know which properties Subversion uses to
record the ignored paths. On the other hand, if it is not expected
to happen very soon, I think the text in this patch is good enough,
and we can revisit the issue of help text getting overly long when
we do need to add the third one.
The same comment applies to the runtime option help for the other
one. I think listing the set of ignore properties we are aware of,
iow what you have in this patch, is perfectly appropriate for the
documentation.
Thanks. |
On the Git mailing list, Alex Galvin wrote (reply to this): On 2024-08-13 1:36 p.m., Junio C Hamano wrote:
> I do not know how likely it is that Subversion gains even more
> sources of exclusion data in the future, but it makes me wonder if a
> phrase like "Create a .gitignore file from ignore properties of svn"
> so that we do not have to muck with the message.
I don't think that Subversion will add another attribute for ignored files anytime soon. The project has not had a minor release since 2020; the svn:global-ignores actually dates back to Subversion 1.8 in 2013.
With that being said, I think your proposed message is still better. I spent entirely too long debating if it was more appropriate to use "and" or "or" in my version of the help text. |
9850e80
to
d0b5df1
Compare
svn:globalignores
in help+docssvn:global-ignores
in help+docs
/submit |
Submitted as pull.1766.v2.git.git.1723578946962.gitgitgadget@gmail.com To fetch this version into
To fetch this version to local tag
|
On the Git mailing list, Junio C Hamano wrote (reply to this): "Alex Galvin via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: Alex Galvin <alex.v.galvin@gmail.com>
>
> Git-SVN was previously taught to use the svn:global-ignores attribute
I think the noun they use is not "attribute" but "property".
> 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
"This commit updates" -> "Update".
> 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",
Hmph. Is it intentional that this "create" side uses a single
property while ...
> { 'revision|r=i' => \$_revision
> } ],
> 'mkdirs' => [ \&cmd_mkdirs ,
> - "recreate empty directories after a checkout",
> + "Recreate empty directories after a checkout",
Given that all other messages begin with capitalized verb, this is a
good change for consistency, but it was not advertised in the
proposed log message (just saying "While at it, capitalize the help
message for 'mkdirs' command. for consistency" would be sufficient).
> { '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",
... the other "show" side talks about "ignore properties" (plural),
implying that both svn:ignore and svn:global-ignores may get
involved?
> { 'revision|r=i' => \$_revision
> } ],
> 'show-externals' => [ \&cmd_show_externals, "Show svn:externals listings",
>
> base-commit: cabe67c0d1819fd1e33079e92615c6c7a3dc560d
Thanks. |
On the Git mailing list, Alex Galvin wrote (reply to this): On 2024-08-13 6:33 p.m., Junio C Hamano wrote:
>> 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 persvn:ignore',
>> + "Create a .gitignore per directory with an SVN ignore property",
> Hmph. Is it intentional that this "create" side uses a single
> property while ...
> ... the other "show" side talks about "ignore properties" (plural),
> implying that both svn:ignore and svn:global-ignores may get
> involved?
I was trying to be precise that the create command makes one .gitignore
file in each directory it visits, regardless if that directory only has
one of the attributes or both. Would using "any SVN ignore property"
instead of "a SVN ignore property" make this clear?
Thanks,
Alex
|
On the Git mailing list, Junio C Hamano wrote (reply to this): Alex Galvin <agalvin@comqi.com> writes:
> On 2024-08-13 6:33 p.m., Junio C Hamano wrote:
>>> 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 persvn:ignore',
>>> + "Create a .gitignore per directory with an SVN ignore property",
>> Hmph. Is it intentional that this "create" side uses a single
>> property while ...
>> ... the other "show" side talks about "ignore properties" (plural),
>> implying that both svn:ignore and svn:global-ignores may get
>> involved?
>
> I was trying to be precise that the create command makes one .gitignore
> file in each directory it visits, regardless if that directory only has
> one of the attributes or both. Would using "any SVN ignore property"
> instead of "a SVN ignore property" make this clear?
You are creating a .gitignore file per each directory that has some
"ignore" properties on the subversion side, so I do not have any
trouble with "_a_ .gitignore" being singular in the description.
And you anticipate that each such directory has one or more [*]
svn:ignore or svn:global-ignores properties attached to it, and that
was why my reading hiccuped after seeing "with _an_ SVN ignore
property".
Side note: * if there is 0 such properties given to the
directory, you obviously do not muck with .gitignore file in the
directory.
So I am not sure how much difference "any/a" before "SVN ignore
property" makes.
Thanks. |
Git-SVN was previously taught to use the svn:global-ignores property 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. Update Git-SVN's documentation and help command to mention support for the new property. Also capitalize the help message for the 'mkdirs' command, for consistency. Signed-off-by: Alex Galvin <agalvin@comqi.com>
d0b5df1
to
a6d9351
Compare
/submit |
Submitted as pull.1766.v3.git.git.1723665790460.gitgitgadget@gmail.com To fetch this version into
To fetch this version to local tag
|
On the Git mailing list, Junio C Hamano wrote (reply to this): "Alex Galvin via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: Alex Galvin <agalvin@comqi.com>
>
> Git-SVN was previously taught to use the svn:global-ignores property 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. Update Git-SVN's documentation and help
> command to mention support for the new property. Also capitalize the
> help message for the 'mkdirs' command, for consistency.
>
> Signed-off-by: Alex Galvin <agalvin@comqi.com>
> ---
> git-svn: mention svn:global-ignores in help+docs
Well written. Also thanks for forcing the authorship with the
additional in-body From: header. I totally missed it while reading
the last round.
Will queue. Let's mark it for 'next' soonish.
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1766%2Fav-gal%2Fgit-svn-doc-globalignores-v3
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1766/av-gal/git-svn-doc-globalignores-v3
> Pull-Request: https://github.com/git/git/pull/1766
>
> Range-diff vs v2:
>
> 1: d0b5df150e9 ! 1: a6d93512218 git-svn: mention `svn:global-ignores` in help+docs
> @@
> ## Metadata ##
> -Author: Alex Galvin <alex.v.galvin@gmail.com>
> +Author: Alex Galvin <agalvin@comqi.com>
>
> ## Commit message ##
> git-svn: mention `svn:global-ignores` in help+docs
>
> - 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.
> + Git-SVN was previously taught to use the svn:global-ignores property 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. Update Git-SVN's documentation and help
> + command to mention support for the new property. Also capitalize the
> + help message for the 'mkdirs' command, for consistency.
>
> Signed-off-by: Alex Galvin <agalvin@comqi.com>
>
> @@ 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 an SVN ignore property",
> ++ "Create a .gitignore per directory with SVN ignore properties",
> { 'revision|r=i' => \$_revision
> } ],
> 'mkdirs' => [ \&cmd_mkdirs ,
>
>
> 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..01e7a70de1c 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 SVN ignore properties",
> { '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 |
This branch is now known as |
This patch series was integrated into seen via 1dfacaa. |
This patch series was integrated into next via b8332fe. |
This patch series was integrated into seen via d2baa78. |
There was a status update in the "Cooking" section about the branch "git svn" has been taught about svn:global-ignores property recent versions of Subversion has. Will merge to 'master'. source: <pull.1747.v2.git.git.1721335657.gitgitgadget@gmail.com> source: <pull.1766.v2.git.git.1723578946962.gitgitgadget@gmail.com> |
This patch series was integrated into seen via c0f130c. |
This patch series was integrated into seen via 2e6d668. |
This patch series was integrated into seen via d97956b. |
This patch series was integrated into master via d97956b. |
This patch series was integrated into next via d97956b. |
Closed via d97956b. |
No description provided.