Merge branch 'master' of git://repo.or.cz/git/fastimport
* 'master' of git://repo.or.cz/git/fastimport: Remove unnecessary casts from fast-import New fast-import test case for valid tree sorting fast-import: grow tree storage more aggressively
This commit is contained in:
commit
f8a066581d
@ -1058,7 +1058,7 @@ static void load_tree(struct tree_entry *root)
|
|||||||
struct tree_entry *e = new_tree_entry();
|
struct tree_entry *e = new_tree_entry();
|
||||||
|
|
||||||
if (t->entry_count == t->entry_capacity)
|
if (t->entry_count == t->entry_capacity)
|
||||||
root->tree = t = grow_tree_content(t, 8);
|
root->tree = t = grow_tree_content(t, t->entry_count);
|
||||||
t->entries[t->entry_count++] = e;
|
t->entries[t->entry_count++] = e;
|
||||||
|
|
||||||
e->tree = NULL;
|
e->tree = NULL;
|
||||||
@ -1066,7 +1066,7 @@ static void load_tree(struct tree_entry *root)
|
|||||||
if (!c)
|
if (!c)
|
||||||
die("Corrupt mode in %s", sha1_to_hex(sha1));
|
die("Corrupt mode in %s", sha1_to_hex(sha1));
|
||||||
e->versions[0].mode = e->versions[1].mode;
|
e->versions[0].mode = e->versions[1].mode;
|
||||||
e->name = to_atom(c, (unsigned short)strlen(c));
|
e->name = to_atom(c, strlen(c));
|
||||||
c += e->name->str_len + 1;
|
c += e->name->str_len + 1;
|
||||||
hashcpy(e->versions[0].sha1, (unsigned char*)c);
|
hashcpy(e->versions[0].sha1, (unsigned char*)c);
|
||||||
hashcpy(e->versions[1].sha1, (unsigned char*)c);
|
hashcpy(e->versions[1].sha1, (unsigned char*)c);
|
||||||
@ -1225,9 +1225,9 @@ static int tree_content_set(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (t->entry_count == t->entry_capacity)
|
if (t->entry_count == t->entry_capacity)
|
||||||
root->tree = t = grow_tree_content(t, 8);
|
root->tree = t = grow_tree_content(t, t->entry_count);
|
||||||
e = new_tree_entry();
|
e = new_tree_entry();
|
||||||
e->name = to_atom(p, (unsigned short)n);
|
e->name = to_atom(p, n);
|
||||||
e->versions[0].mode = 0;
|
e->versions[0].mode = 0;
|
||||||
hashclr(e->versions[0].sha1);
|
hashclr(e->versions[0].sha1);
|
||||||
t->entries[t->entry_count++] = e;
|
t->entries[t->entry_count++] = e;
|
||||||
|
@ -501,4 +501,54 @@ test_expect_success \
|
|||||||
'test `git-rev-parse --verify branch^1` \
|
'test `git-rev-parse --verify branch^1` \
|
||||||
= `git-rev-parse --verify K^1`'
|
= `git-rev-parse --verify K^1`'
|
||||||
|
|
||||||
|
###
|
||||||
|
### series L
|
||||||
|
###
|
||||||
|
|
||||||
|
cat >input <<INPUT_END
|
||||||
|
blob
|
||||||
|
mark :1
|
||||||
|
data <<EOF
|
||||||
|
some data
|
||||||
|
EOF
|
||||||
|
|
||||||
|
blob
|
||||||
|
mark :2
|
||||||
|
data <<EOF
|
||||||
|
other data
|
||||||
|
EOF
|
||||||
|
|
||||||
|
commit refs/heads/L
|
||||||
|
committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE
|
||||||
|
data <<COMMIT
|
||||||
|
create L
|
||||||
|
COMMIT
|
||||||
|
|
||||||
|
M 644 :1 b.
|
||||||
|
M 644 :1 b/other
|
||||||
|
M 644 :1 ba
|
||||||
|
|
||||||
|
commit refs/heads/L
|
||||||
|
committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE
|
||||||
|
data <<COMMIT
|
||||||
|
update L
|
||||||
|
COMMIT
|
||||||
|
|
||||||
|
M 644 :2 b.
|
||||||
|
M 644 :2 b/other
|
||||||
|
M 644 :2 ba
|
||||||
|
INPUT_END
|
||||||
|
|
||||||
|
cat >expect <<EXPECT_END
|
||||||
|
:100644 100644 4268632... 55d3a52... M b.
|
||||||
|
:040000 040000 0ae5cac... 443c768... M b
|
||||||
|
:100644 100644 4268632... 55d3a52... M ba
|
||||||
|
EXPECT_END
|
||||||
|
|
||||||
|
test_expect_success \
|
||||||
|
'L: verify internal tree sorting' \
|
||||||
|
'git-fast-import <input &&
|
||||||
|
git-diff --raw L^ L >output &&
|
||||||
|
git diff expect output'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
Loading…
Reference in New Issue
Block a user