Junio C Hamano <gitster@xxxxxxxxx> writes: >> +void setup_tracking(const char *new_ref, const char *orig_ref, >> + enum branch_track track, int quiet, int expand_orig) >> +{ >> + struct tracking tracking; >> + int config_flags = quiet ? 0 : BRANCH_CONFIG_VERBOSE; >> + char *full_orig_ref; >> + struct object_id unused_oid; >> + >> + memset(&tracking, 0, sizeof(tracking)); >> + if (expand_orig) >> + validate_branch_start(the_repository, orig_ref, track, &unused_oid, &full_orig_ref); >> + else >> + full_orig_ref = xstrdup(orig_ref); >> + >> + tracking.spec.dst = full_orig_ref; >> + if (for_each_remote(find_tracked_branch, &tracking)) >> + goto cleanup; >> + >> + if (!tracking.matches) >> + switch (track) { >> + case BRANCH_TRACK_ALWAYS: >> + case BRANCH_TRACK_EXPLICIT: >> + case BRANCH_TRACK_OVERRIDE: >> + break; > > This heavily conflicts with what another topic "inherit tracking > info from the other branch" wants to do to this function. What's > the status of that topic, by the way? Should we block this one > waiting for the other, or the other way around? > > Thanks. As mentioned in [1], I plan to rebase this series on top of the "inherit tracking info from the other branch" series. I'll send a re-roll soon, thanks! [1] https://lore.kernel.org/git/kl6lbl1rauw3.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/