Files
git/checkout.h
Yoichi NAKAYAMA 05cf4ceb5b checkout: improve message for ambiguous remote branch name
When the user runs 'git checkout bar-topic' without specifying a
remote, and there is no local branch named bar-topic, we try to guess
which remote branch bar-topic refers to, then create a new branch
named bar-topic that tracks the remote branch.

If multiple remotes have a branch named bar-topic, we cannot determine
a single remote.

To make it easier to resolve the ambiguity, provide the names of the
matching remotes for the specified branch name.

To achieve that, add an optional feature to the
`unique_tracking_name()` function that allows the matching remote
names to be exposed to the caller.

Signed-off-by: Yoichi NAKAYAMA <yoichi.nakayama@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2026-08-27 10:29:43 -07:00

19 lines
430 B
C

#ifndef CHECKOUT_H
#define CHECKOUT_H
#include "hash.h"
struct string_list;
/*
* Check if the branch name uniquely matches a branch name on a remote
* tracking branch. Return the name of the remote if such a branch
* exists, NULL otherwise.
*/
char *unique_tracking_name(const char *name,
struct object_id *oid,
int *dwim_remotes_matched,
struct string_list *dwim_remote_names);
#endif /* CHECKOUT_H */