Merge branch 'mg/track'

* mg/track:
  Fix behavior with non-commit upstream references
  Test tracking of non-commit upstreams
This commit is contained in:
Junio C Hamano 2009-05-23 01:44:00 -07:00
commit c9a88deede
2 changed files with 16 additions and 2 deletions

View File

@ -1399,13 +1399,13 @@ int stat_tracking_info(struct branch *branch, int *num_ours, int *num_theirs)
base = branch->merge[0]->dst;
if (!resolve_ref(base, sha1, 1, NULL))
return 0;
theirs = lookup_commit(sha1);
theirs = lookup_commit_reference(sha1);
if (!theirs)
return 0;
if (!resolve_ref(branch->refname, sha1, 1, NULL))
return 0;
ours = lookup_commit(sha1);
ours = lookup_commit_reference(sha1);
if (!ours)
return 0;

View File

@ -74,5 +74,19 @@ test_expect_success 'status' '
grep "have 1 and 1 different" actual
'
test_expect_success 'status when tracking lightweight tags' '
git checkout master &&
git tag light &&
git branch --track lighttrack light >actual &&
grep "set up to track" actual &&
git checkout lighttrack
'
test_expect_success 'status when tracking annotated tags' '
git checkout master &&
git tag -m heavy heavy &&
git branch --track heavytrack heavy >actual &&
grep "set up to track" actual &&
git checkout heavytrack
'
test_done