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

Re: Server-side preventing some files from being overwritten

From
Stefan Beller <sbeller@google.com>
Date
Jul 14, 2016, 18:50 UTC
Message-ID
<CAGZ79kYFb5UJ=cnXZTbcO3L4+wc5G24_pV2BhHkOH-+wM9CFJQ@mail.gmail.com>
In-Reply-To
<CAPc5daXxAqXtUvs1Xr_vgncXqcvR8-VG67oDAgOQ8xPcT7nCeQ@mail.gmail.com>
On Thu, Jul 14, 2016 at 11:44 AM, Junio C Hamano <gitster@pobox.com> wrote:
Show 15 quoted lines
> On Thu, Jul 14, 2016 at 11:27 AM, Junio C Hamano <gitster@pobox.com> wrote:
>> Thorsten Glaser <t.glaser@tarent.de> writes:
>>
>>>       if test x"0" != x"$(comm -23z \
>>>           <(git ls-tree -r -z "$old" "$subdir" | sort -z) \
>>>           <(git ls-tree -r -z "$new" "$subdir" | sort -z) | wc -c)"; then
>>>               echo >&2 'Untouchable files touched, commit rejected!'
>>>               exit 1
>>>       fi
>>
>> Can't this become simpler, e.g.
>>
>>         if ! git diff-tree --quiet "$old" "$new" -- "$subdir"
>>         then
>>                 echo >&2 "Ooh, $subdir is touched"

No need to go for >&2 here, as it makes no difference to the client.

>>                 exit 1
>>         fi
>
> Ehh, you need to tell diff-tree to recurse, i.e. "diff-tree -r".
Previous: Junio C HamanoNext: Ævar Arnfjörð Bjarmason
Message 6 of 12 in “Server-side preventing some files from being overwritten”
  1. Thorsten GlaserJul 14, 2016
  2. Stefan BellerJul 14, 2016
  3. Thorsten GlaserJul 14, 2016
  4. Junio C HamanoJul 14, 2016
  5. Junio C HamanoJul 14, 2016
  6. Stefan BellerJul 14, 2016
  7. Ævar Arnfjörð BjarmasonJul 15, 2016
  8. Thorsten GlaserJul 15, 2016
  9. Thorsten GlaserJul 14, 2016
  10. Junio C HamanoJul 14, 2016
  11. Jakub NarębskiJul 21, 2016
  12. Thorsten GlaserJul 21, 2016

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.