MCPcopy Index your code
hub / github.com/git/git / alias_url

Function alias_url

remote.c:49–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47}
48
49static char *alias_url(const char *url, struct rewrites *r)
50{
51 int i, j;
52 struct counted_string *longest;
53 int longest_i;
54
55 longest = NULL;
56 longest_i = -1;
57 for (i = 0; i < r->rewrite_nr; i++) {
58 if (!r->rewrite[i])
59 continue;
60 for (j = 0; j < r->rewrite[i]->instead_of_nr; j++) {
61 if (starts_with(url, r->rewrite[i]->instead_of[j].s) &&
62 (!longest ||
63 longest->len < r->rewrite[i]->instead_of[j].len)) {
64 longest = &(r->rewrite[i]->instead_of[j]);
65 longest_i = i;
66 }
67 }
68 }
69 if (!longest)
70 return NULL;
71
72 return xstrfmt("%s%s", r->rewrite[longest_i]->base, url + longest->len);
73}
74
75static void add_url(struct remote *remote, const char *url)
76{

Callers 3

add_pushurl_aliasFunction · 0.85
add_url_aliasFunction · 0.85
alias_all_urlsFunction · 0.85

Calls 2

starts_withFunction · 0.85
xstrfmtFunction · 0.85

Tested by

no test coverage detected