Skip to content

Commit b056620

Browse files
felipecgitster
authored andcommitted
transport-helper: improve push messages
If there's already a remote-helper tracking ref, we can fetch the SHA-1 to report proper push messages (as opposed to always reporting [new branch]). The remote-helper currently can specify the old SHA-1 to avoid this problem, but there's no point in forcing all remote-helpers to be aware of git commit ids; they should be able to be agnostic of them. Signed-off-by: Felipe Contreras <[email protected]> Reviewed-by: Jeff King <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 571cdfd commit b056620

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

t/t5801-remote-helpers.sh

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,4 +166,18 @@ test_expect_success 'push ref with existing object' '
166166
compare_refs local dup server dup
167167
'
168168

169+
test_expect_success 'push messages' '
170+
(cd local &&
171+
git checkout -b new_branch master &&
172+
echo new >>file &&
173+
git commit -a -m new &&
174+
git push origin new_branch &&
175+
git fetch origin &&
176+
echo new >>file &&
177+
git commit -a -m new &&
178+
git push origin new_branch 2> msg &&
179+
! grep "\[new branch\]" msg
180+
)
181+
'
182+
169183
test_done

transport-helper.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -801,6 +801,7 @@ static int push_refs_with_export(struct transport *transport,
801801
if (private && !get_sha1(private, sha1)) {
802802
strbuf_addf(&buf, "^%s", private);
803803
string_list_append(&revlist_args, strbuf_detach(&buf, NULL));
804+
hashcpy(ref->old_sha1, sha1);
804805
}
805806
free(private);
806807

0 commit comments

Comments
 (0)