Re: [PATCH 0/3] object-name: don't allow @ as a branch name
- From
shejialuo <shejialuo@gmail.com>
- Date
- Oct 9, 2024, 12:00 UTC
- Message-ID
- <ZwZwdvlQv9AMRJpI@ArchLinux>
- In-Reply-To
- <xmqqjzei1mtb.fsf@gitster.g>
On Tue, Oct 08, 2024 at 11:17:36AM -0700, Junio C Hamano wrote:
Show 15 quoted lines
> shejialuo <shejialuo@gmail.com> writes:
>
> > The reason why "git refs verify" will report this error is that in the
> > code implementation, I have to iterate every file in the filesystem. So
> > it's convenient for me to do the following:
> >
> > if (check_refname_format(iter->basename, REFNAME_ALLOW_ONELEVEL)) {
> > ret = fsck_report(...);
> > }
>
> It may be convenient, but I think it is wrong. HEAD may be allowed
> at the top, but refs/heads/HEAD is not, and checking only the single
> level name as you descend into .git/refs directory hierarchy and
> find files would not be a good design to begin with (and it would
> not work if your backend is reftable).In my current work, I will introduce worktree check here and then I will use the fullname to check and this will not be a problem. Thanks for reminding here.