Re: [PATCH 4/7] sequencer: introduce functions to handle autostashes via refs
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 22, 2024, 20:16 UTC
- Message-ID
- <xmqqy1chrumk.fsf@gitster.g>
- In-Reply-To
- <a7712d26-7c63-4c77-b339-126d05be6b0d@gmail.com>
Phillip Wood <phillip.wood123@gmail.com> writes:
Show 11 quoted lines
>> ... These refs are not supposed to be accessed by the user in the >> first place, and we do not document their existence to the best of my >> knowledge. Also, `git rev-parse rebase-merge/autostash` would fail. > > Exactly "rebase-merge/autostash" is a detail of the rebase > implementation, it is not a ref that users should be using. > >> So overall I think it's fine to leave this internal sequencer state as >> self-contained as it is. > > That's my feeling too
Good. As long as "git rev-parse rebase-merge/autostash" fails, and regardless of the ref backend in use, we always do "read one line from the on-disk file and run get_oid_hex() on it", I would be happy with that direction.
Thanks.
[Footnote]
* We seem to overuse strbuf_read_file() even when we expect that
the file is a single-liner. We have read_line_from_git_path() in
wt-status.c that only reads one line and we may want to split it
into two: one that takes a filename and calls the other with
git_path("%s", filename), and the other that takes a path for any
on-disk file, reads a single line, and returns the string that
was read, or something like that. We might later want to update
the "other" function so that it errors out if there are extra
trailing lines (i.e. we expect it is a single-liner, but that
expectation is violated---now what?).