git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v3 4/4] contrib: add convert-grafts-to-replace-refs.sh

From
Christian Couder <christian.couder@gmail.com>
Date
Jun 6, 2014, 15:47 UTC
Message-ID
<CAP8UFD2kSP-ONaANhXhmr5-USC4af9RHEkeTOAhH6Jm-1TNdiA@mail.gmail.com>
In-Reply-To
<xmqqa99rrpgx.fsf@gitster.dls.corp.google.com>
On Thu, Jun 5, 2014 at 11:55 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 24 quoted lines
> Christian Couder <chriscool@tuxfamily.org> writes:
>
>> diff --git a/contrib/convert-grafts-to-replace-refs.sh b/contrib/convert-grafts-to-replace-refs.sh
>> new file mode 100755
>> index 0000000..8472879
>> --- /dev/null
>> +++ b/contrib/convert-grafts-to-replace-refs.sh
>> @@ -0,0 +1,29 @@
>> +#!/bin/sh
>> +
>> +# You should execute this script in the repository where you
>> +# want to convert grafts to replace refs.
>> +
>> +die () {
>> +     echo >&2 "$@"
>> +     exit 1
>> +}
>
> Don't we install git-sh-setup in GIT_EXEC_PATH, in order to allow
> these third-party scripts to begin with:
>
>         . $(git --exec-path)/git-sh-setup
>
> just like our own scripted Porcelains?
Ok, I will use that.
Show 14 quoted lines
>> +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
>
> Format the above like so:
>
>     grep '^[^# ]' "$GRAFTS_FILE" |
>     while read definition
>     do
>
> which is easier to see what that "do" is doing.
Ok.
Show 7 quoted lines
>> +     test -n "$definition" && {
>> +             echo "Converting: $definition"
>> +             git replace --graft $definition ||
>> +                     die "Conversion failed for: $definition"
>> +     }
>
> Hmph, why not if/then/fi?
Ok, I will use if/then/fi.

Thanks, Christian.

Previous: Junio C HamanoNext: Christian Couder
Message 16 of 19 in “Add --graft option to git replace”
  1. 0/4 Add --graft option to git replaceChristian Couder, Jun 4, 2014
  2. 1/4 replace: add --graft optionChristian Couder, Jun 4, 2014
  3. Junio C HamanoJun 5, 2014
  4. Christian CouderJun 6, 2014
  5. Christian CouderJun 6, 2014
  6. Christian CouderJun 8, 2014
  7. Jeff KingJun 8, 2014
  8. Jeff KingJun 8, 2014
  9. Jeff KingJun 8, 2014
  10. Junio C HamanoJun 9, 2014
  11. Junio C HamanoJun 6, 2014
  12. 2/4 replace: add test for --graftChristian Couder, Jun 4, 2014
  13. 3/4 Documentation: replace: add --graft optionChristian Couder, Jun 4, 2014
  14. 4/4 contrib: add convert-grafts-to-replace-refs.shChristian Couder, Jun 4, 2014
  15. Junio C HamanoJun 5, 2014
  16. Christian CouderJun 6, 2014
  17. Christian CouderJun 29, 2014
  18. Junio C HamanoJun 30, 2014
  19. Christian CouderJun 30, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.