Re: [PATCH 0/9] leftover bits from symlinked gitattributes, etc topics
Jeff King <peff@peff.net> writes:
Show 11 quoted lines
> A while back, I had a topic[1] that treated symlinked .gitattributes
> (and .gitignore and .mailmap) the same as .gitmodules: forbidding them
> in the index, complaining about them via fsck, etc.
>
> In the end, we decided not to do that[2], and instead just open the
> files with O_NOFOLLOW instead. As I said in that thread, we could
> salvage some of the cleanups, fsck checks, and docs from the original
> topic. So here that is. (The new topic is in master but not yet
> released; so while this is not strictly a bug-fix for an existing topic,
> it would be good to get especially the doc improvements into the same
> release).
Show 48 quoted lines
> [1] https://lore.kernel.org/git/20201005071751.GA2290770@coredump.intra.peff.net/
> [2] https://lore.kernel.org/git/YDiWs6yyv3U9YvC2@coredump.intra.peff.net/
>
> The patches are:
>
> [1/9]: t7415: remove out-dated comment about translation
> [2/9]: fsck_tree(): fix shadowed variable
> [3/9]: fsck_tree(): wrap some long lines
>
> These three are really independent fixes and cleanups, that could be
> taken separately.
>
> [4/9]: t7415: rename to expand scope
> [5/9]: t7450: test verify_path() handling of gitmodules
> [6/9]: t7450: test .gitmodules symlink matching against obscured names
>
> These three are just cleaning up and improving the tests for the
> existing handling of the .gitmodules symlinks.
>
> [7/9]: t0060: test ntfs/hfs-obscured dotfiles
> [8/9]: fsck: warn about symlinked dotfiles we'll open with O_NOFOLLOW
>
> These two extend fsck checks (warnings, not errors) to the new
> files. I think this is an improvement, but I could be persuaded
> otherwise (and these two could be dropped independent of the rest).
>
> [9/9]: docs: document symlink restrictions for dot-files
>
> And this covers documentation for all of the files (including
> .gitmodules).
>
> Documentation/gitattributes.txt | 7 ++
> Documentation/gitignore.txt | 5 +
> Documentation/gitmailmap.txt | 7 ++
> Documentation/gitmodules.txt | 8 ++
> cache.h | 1 +
> fsck.c | 84 ++++++++++---
> fsck.h | 3 +
> path.c | 5 +
> t/helper/test-path-utils.c | 46 +++++--
> t/t0060-path-utils.sh | 30 +++++
> ...ule-names.sh => t7450-bad-git-dotfiles.sh} | 116 +++++++++++++-----
> utf8.c | 5 +
> utf8.h | 1 +
> 13 files changed, 257 insertions(+), 61 deletions(-)
> rename t/{t7415-submodule-names.sh => t7450-bad-git-dotfiles.sh} (70%)
>
> -Peff