threads / discuss / 39552

PATCH [git/contrib] Avoid failing to create ${__git_tcsh_completion_script} when 'set noclobber' is in effect (af7333c)

Subject: PATCH [git/contrib] Avoid failing to create ${__git_tcsh_completion_script} when 'set noclobber' is in effect (af7333c)

## tl;dr

2 messages between Jun 7, 2015 and Jun 8, 2015.

replies: 1people: 2as markdown or json

Ariel Faigon· Jun 7, 2015, 19:54 UTC · lore
Junio,

This is my 1st time doing this, sorry. I hope this satisfies the git Sign Off procedure.

Problem Description:
tcsh users who happen to have 'set noclobber' elsewhere in their ~/.tcshrc or ~/.cshrc startup files get a 'File exist' error, and the tcsh completion file doesn't get generated/updated.  Adding a `!` in the redirect works correctly for both clobber and noclobber users.
Developer's Certificate of Origin 1.1
        By making a contribution to this project, I certify that:
        (a) The contribution was created in whole or in part by me and I
            have the right to submit it under the open source license
            indicated in the file; or
        (b) The contribution is based upon previous work that, to the best
            of my knowledge, is covered under an appropriate open source
            license and I have the right under that license to submit that
            work with modifications, whether created in whole or in part
            by me, under the same open source license (unless I am
            permitted to submit under a different license), as indicated
            in the file; or
        (c) The contribution was provided directly to me by some other
            person who certified (a), (b) or (c) and I have not modified
            it.
        (d) I understand and agree that this project and the contribution
            are public and that a record of the contribution (including all
            personal information I submit with it, including my sign-off) is
            maintained indefinitely and may be redistributed consistent with
            this project or the open source license(s) involved.
 Signed-off-by: Ariel Faigon <github.2009@yendor.com>
 git patch follows.
---
 contrib/completion/git-completion.tcsh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/completion/git-completion.tcsh b/contrib/completion/git-completion.tcsh
index 6104a42..4a790d8 100644
--- a/contrib/completion/git-completion.tcsh
+++ b/contrib/completion/git-completion.tcsh
@@ -41,7 +41,7 @@ if ( ! -e ${__git_tcsh_completion_original_script} ) then
 	exit
 endif
 
-cat << EOF > ${__git_tcsh_completion_script}
+cat << EOF >! ${__git_tcsh_completion_script}
 #!bash
 #
 # This script is GENERATED and will be overwritten automatically.
Christian Couder· Jun 8, 2015, 19:31 UTC · re: Ariel Faigon · lore

Re: PATCH [git/contrib] Avoid failing to create ${__git_tcsh_completion_script} when 'set noclobber' is in effect (af7333c)

Please use a subject that is shorter and looks more like others on this list.
On Sun, Jun 7, 2015 at 9:54 PM, Ariel Faigon <github.2009@yendor.com> wrote:
Show 5 quoted lines
>
> Junio,
>
> This is my 1st time doing this, sorry.
> I hope this satisfies the git Sign Off procedure.

The above lines should not be there, otherwise they will be in the commit message and will not be useful there.

> Problem Description:
Please loose the above header.
> tcsh users who happen to have 'set noclobber' elsewhere in their ~/.tcshrc or ~/.cshrc startup files get a 'File exist' error,
When do they get that error?
Show 27 quoted lines
> and the tcsh completion file doesn't get generated/updated.  Adding a `!` in the redirect works correctly for both clobber and noclobber users.
>
> Developer's Certificate of Origin 1.1
>
>         By making a contribution to this project, I certify that:
>
>         (a) The contribution was created in whole or in part by me and I
>             have the right to submit it under the open source license
>             indicated in the file; or
>
>         (b) The contribution is based upon previous work that, to the best
>             of my knowledge, is covered under an appropriate open source
>             license and I have the right under that license to submit that
>             work with modifications, whether created in whole or in part
>             by me, under the same open source license (unless I am
>             permitted to submit under a different license), as indicated
>             in the file; or
>
>         (c) The contribution was provided directly to me by some other
>             person who certified (a), (b) or (c) and I have not modified
>             it.
>
>         (d) I understand and agree that this project and the contribution
>             are public and that a record of the contribution (including all
>             personal information I submit with it, including my sign-off) is
>             maintained indefinitely and may be redistributed consistent with
>             this project or the open source license(s) involved.

You don't need to copy the Developer's Certificate of Origin in your patch even if it's the first time. Your signed-off-by below is enough.

>  Signed-off-by: Ariel Faigon <github.2009@yendor.com>
>
>  git patch follows.
Please put nothing after your signed-off-by and before the three dashes below.
> ---

Here, just after the three dashes, is the right place to put personnal comments and stuff that should not go into the commit message.

Show 16 quoted lines
>  contrib/completion/git-completion.tcsh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/contrib/completion/git-completion.tcsh b/contrib/completion/git-completion.tcsh
> index 6104a42..4a790d8 100644
> --- a/contrib/completion/git-completion.tcsh
> +++ b/contrib/completion/git-completion.tcsh
> @@ -41,7 +41,7 @@ if ( ! -e ${__git_tcsh_completion_original_script} ) then
>         exit
>  endif
>
> -cat << EOF > ${__git_tcsh_completion_script}
> +cat << EOF >! ${__git_tcsh_completion_script}
>  #!bash
>  #
>  # This script is GENERATED and will be overwritten automatically.

Thanks, Christian.

← back to recent threads