* Re: [PATCH] contrib: add convert-grafts-to-replace-refs.sh
[not found] <20140527182719.14437.62235.chriscool@tuxfamily.org>
@ 2014-05-27 21:19 ` Eric Sunshine
2014-05-27 22:00 ` Junio C Hamano
0 siblings, 1 reply; 2+ messages in thread
From: Eric Sunshine @ 2014-05-27 21:19 UTC (permalink / raw
To: Christian Couder
Cc: Junio C Hamano, git@vger.kernel.org, Jeff King,
Jakub Narębski
On Tuesday, May 27, 2014, Christian Couder <chriscool@tuxfamily.org> wrote:
>
> This script adds into contrib/ an example script to convert
> grafts from an existing grafts file into replace refs using
> the new --graft option of "git replace".
>
> While at it let's mention this new script in the
> "git replace" documentation for the --graft option.
>
> Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
> ---
> Documentation/git-replace.txt | 4 +++-
> contrib/convert-grafts-to-replace-refs.sh | 24 ++++++++++++++++++++++++
> 2 files changed, 27 insertions(+), 1 deletion(-)
> create mode 100755 contrib/convert-grafts-to-replace-refs.sh
>
> diff --git a/Documentation/git-replace.txt b/Documentation/git-replace.txt
> index 491875e..e1be2e6 100644
> --- a/Documentation/git-replace.txt
> +++ b/Documentation/git-replace.txt
> @@ -79,7 +79,9 @@ OPTIONS
> content as <commit> except that its parents will be
> [<parent>...] instead of <commit>'s parents. A replacement ref
> is then created to replace <commit> with the newly created
> - commit.
> + commit. See contrib/convert-grafts-to-replace-refs.sh for an
> + example script based on this option that can convert grafts to
> + replace refs.
>
> -l <pattern>::
> --list <pattern>::
> diff --git a/contrib/convert-grafts-to-replace-refs.sh b/contrib/convert-grafts-to-replace-refs.sh
> new file mode 100755
> index 0000000..2404cc6
> --- /dev/null
> +++ b/contrib/convert-grafts-to-replace-refs.sh
> @@ -0,0 +1,24 @@
> +#!/bin/sh
> +
> +# You should execute this script in the repository where you
> +# want to convert grafts to replace refs.
> +
> +die () {
> + echo >&2 "$@"
> + exit 1
> +}
> +
> +GRAFTS_FILE="${GIT_DIR:-.git}/info/grafts"
> +
> +test -f "$GRAFTS_FILE" || die "Could not find graft file: '$GRAFTS_FILE'"
> +
> +grep '^[^# ]' "$GRAFTS_FILE" | while read definition
> +do
> + test -n "$definition" && {
> + echo "Converting: $definition"
> + git replace --graft $definition || die "Convertion failed for: $definition"
s/Convertion/Conversion/
> + }
> +done
> +
> +echo "Success! All the grafts in '$GRAFTS_FILE' have been converted to replace refs!"
> +echo "You should now move away or delete the grafts file: '$GRAFTS_FILE'"
Rather than merely giving advice, would it make sees for the script
rename the file (adding .bak or some such) and report that it did so?
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] contrib: add convert-grafts-to-replace-refs.sh
2014-05-27 21:19 ` [PATCH] contrib: add convert-grafts-to-replace-refs.sh Eric Sunshine
@ 2014-05-27 22:00 ` Junio C Hamano
0 siblings, 0 replies; 2+ messages in thread
From: Junio C Hamano @ 2014-05-27 22:00 UTC (permalink / raw
To: Eric Sunshine
Cc: Christian Couder, git@vger.kernel.org, Jeff King,
Jakub Narębski
Eric Sunshine <sunshine@sunshineco.com> writes:
>> +echo "Success! All the grafts in '$GRAFTS_FILE' have been converted to replace refs!"
>> +echo "You should now move away or delete the grafts file: '$GRAFTS_FILE'"
>
> Rather than merely giving advice, would it make sees for the script
> rename the file (adding .bak or some such) and report that it did so?
Yeah, I would say so.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-05-27 22:00 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20140527182719.14437.62235.chriscool@tuxfamily.org>
2014-05-27 21:19 ` [PATCH] contrib: add convert-grafts-to-replace-refs.sh Eric Sunshine
2014-05-27 22:00 ` Junio C Hamano
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).