summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2021-08-10 10:06:43 -0400
committerGitHub <noreply@github.com>2021-08-10 10:06:43 -0400
commit5fd442391b4d547f4ee3705c0e7fb17ce74bb4f7 (patch)
tree9f61bf3fb4b332b996d74fa44bf40da7ae743ee6 /src
parent9c64acdd111003bd1e8c9dd0c8e6869cbea6e6b6 (diff)
parenta5696702dbd8c7abbd37f083a411adecab7cedfe (diff)
downloadlibgit2-5fd442391b4d547f4ee3705c0e7fb17ce74bb4f7.tar.gz
Merge pull request #5854 from alexjg/respect-force-flag-in-remote-fetch
Respect the force flag on refspecs in git_remote_fetch
Diffstat (limited to 'src')
-rw-r--r--src/remote.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/remote.c b/src/remote.c
index 5f6ba5bf7..ec68cc0f6 100644
--- a/src/remote.c
+++ b/src/remote.c
@@ -1460,6 +1460,11 @@ static int update_tips_for_spec(
if (error < 0 && error != GIT_ENOTFOUND)
goto on_error;
+ if (!(error || error == GIT_ENOTFOUND)
+ && !spec->force
+ && !git_graph_descendant_of(remote->repo, &head->oid, &old))
+ continue;
+
if (error == GIT_ENOTFOUND) {
memset(&old, 0, GIT_OID_RAWSZ);