This function and its companion, strbuf_check_branch_ref(), did not have their purpose or semantics explained. Let's do so. Signed-off-by: Jeff King <peff@xxxxxxxx> --- strbuf.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/strbuf.h b/strbuf.h index 47df0500d..6b51b2604 100644 --- a/strbuf.h +++ b/strbuf.h @@ -560,7 +560,22 @@ static inline void strbuf_complete_line(struct strbuf *sb) strbuf_complete(sb, '\n'); } +/* + * Copy "name" to "sb", expanding any special @-marks as handled by + * interpret_branch_name(). The result is a non-qualified branch name + * (so "foo" or "origin/master" instead of "refs/heads/foo" or + * "refs/remotes/origin/master"). + * + * Note that the resulting name may not be a syntactically valid refname. + */ extern void strbuf_branchname(struct strbuf *sb, const char *name); + +/* + * Like strbuf_branchname() above, but confirm that the result is + * syntactically valid to be used as a local branch name in refs/heads/. + * + * The return value is "0" if the result is valid, and "-1" otherwise. + */ extern int strbuf_check_branch_ref(struct strbuf *sb, const char *name); extern void strbuf_addstr_urlencode(struct strbuf *, const char *, -- 2.12.0.367.gb23790f66