examples: adjust to the new remote API
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
diff --git a/examples/network/clone.c b/examples/network/clone.c
index 270bb68..37e373d 100644
--- a/examples/network/clone.c
+++ b/examples/network/clone.c
@@ -86,9 +86,9 @@ int do_clone(git_repository *repo, int argc, char **argv)
checkout_opts.progress_cb = checkout_progress;
checkout_opts.progress_payload = &pd;
clone_opts.checkout_opts = checkout_opts;
- clone_opts.remote_callbacks.transfer_progress = &fetch_progress;
- clone_opts.remote_callbacks.credentials = cred_acquire_cb;
- clone_opts.remote_callbacks.payload = &pd;
+ clone_opts.fetch_opts.callbacks.transfer_progress = &fetch_progress;
+ clone_opts.fetch_opts.callbacks.credentials = cred_acquire_cb;
+ clone_opts.fetch_opts.callbacks.payload = &pd;
// Do the clone
error = git_clone(&cloned_repo, url, path, &clone_opts);
diff --git a/examples/network/fetch.c b/examples/network/fetch.c
index a4bec03..e47f5be 100644
--- a/examples/network/fetch.c
+++ b/examples/network/fetch.c
@@ -10,6 +10,7 @@
struct dl_data {
git_remote *remote;
+ git_fetch_options *fetch_opts;
int ret;
int finished;
};
@@ -28,7 +29,7 @@ static void *download(void *ptr)
// Connect to the remote end specifying that we want to fetch
// information from it.
- if (git_remote_connect(data->remote, GIT_DIRECTION_FETCH) < 0) {
+ if (git_remote_connect(data->remote, GIT_DIRECTION_FETCH, &data->fetch_opts->callbacks) < 0) {
data->ret = -1;
goto exit;
}
@@ -36,7 +37,7 @@ static void *download(void *ptr)
// Download the packfile and index it. This function updates the
// amount of received data and the indexer stats which lets you
// inform the user about progress.
- if (git_remote_download(data->remote, NULL) < 0) {
+ if (git_remote_download(data->remote, NULL, data->fetch_opts) < 0) {
data->ret = -1;
goto exit;
}
@@ -78,7 +79,7 @@ int fetch(git_repository *repo, int argc, char **argv)
git_remote *remote = NULL;
const git_transfer_progress *stats;
struct dl_data data;
- git_remote_callbacks callbacks = GIT_REMOTE_CALLBACKS_INIT;
+ git_fetch_options fetch_opts = GIT_FETCH_OPTIONS_INIT;
#ifndef _WIN32
pthread_t worker;
#endif
@@ -96,13 +97,13 @@ int fetch(git_repository *repo, int argc, char **argv)
}
// Set up the callbacks (only update_tips for now)
- callbacks.update_tips = &update_cb;
- callbacks.sideband_progress = &progress_cb;
- callbacks.credentials = cred_acquire_cb;
- git_remote_set_callbacks(remote, &callbacks);
+ fetch_opts.callbacks.update_tips = &update_cb;
+ fetch_opts.callbacks.sideband_progress = &progress_cb;
+ fetch_opts.callbacks.credentials = cred_acquire_cb;
// Set up the information for the background worker thread
data.remote = remote;
+ data.fetch_opts = &fetch_opts;
data.ret = 0;
data.finished = 0;
@@ -156,7 +157,7 @@ int fetch(git_repository *repo, int argc, char **argv)
// right commits. This may be needed even if there was no packfile
// to download, which can happen e.g. when the branches have been
// changed but all the needed objects are available locally.
- if (git_remote_update_tips(remote, NULL) < 0)
+ if (git_remote_update_tips(remote, &fetch_opts.callbacks, 1, fetch_opts.download_tags, NULL) < 0)
return -1;
git_remote_free(remote);
diff --git a/examples/network/ls-remote.c b/examples/network/ls-remote.c
index 5e3ade9..a260922 100644
--- a/examples/network/ls-remote.c
+++ b/examples/network/ls-remote.c
@@ -25,9 +25,8 @@ static int use_remote(git_repository *repo, char *name)
* each of the remote references.
*/
callbacks.credentials = cred_acquire_cb;
- git_remote_set_callbacks(remote, &callbacks);
- error = git_remote_connect(remote, GIT_DIRECTION_FETCH);
+ error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks);
if (error < 0)
goto cleanup;
diff --git a/examples/remote.c b/examples/remote.c
index b756b56..e0d5a14 100644
--- a/examples/remote.c
+++ b/examples/remote.c
@@ -151,7 +151,6 @@ static int cmd_seturl(git_repository *repo, struct opts *o)
{
int i, retval, push = 0;
char *name = NULL, *url = NULL;
- git_remote *remote;
for (i = 0; i < o->argc; i++) {
char *arg = o->argv[i];
@@ -170,19 +169,12 @@ static int cmd_seturl(git_repository *repo, struct opts *o)
if (name == NULL || url == NULL)
usage("you need to specify remote and the new URL", NULL);
- check_lg2(git_remote_lookup(&remote, repo, name),
- "could not look up remote", name);
-
if (push)
- retval = git_remote_set_pushurl(remote, url);
+ retval = git_remote_set_pushurl(repo, name, url);
else
- retval = git_remote_set_url(remote, url);
- check_lg2(retval, "could not set URL", url);
+ retval = git_remote_set_url(repo, name, url);
- check_lg2(git_remote_save(remote),
- "could not save remote", NULL);
-
- git_remote_free(remote);
+ check_lg2(retval, "could not set URL", url);
return 0;
}