зеркало из https://github.com/microsoft/git.git
Merge branch 'maint-1.5.4' into maint
* maint-1.5.4: t5516: remove ambiguity test (1) Linked glossary from cvs-migration page write-tree: properly detect failure to write tree objects
This commit is contained in:
Коммит
31c6390d40
|
@ -8,7 +8,8 @@ designating a single shared repository which people can synchronize with;
|
|||
this document explains how to do that.
|
||||
|
||||
Some basic familiarity with git is required. This
|
||||
link:tutorial.html[tutorial introduction to git] should be sufficient.
|
||||
link:tutorial.html[tutorial introduction to git] and the
|
||||
link:glossary.html[git glossary] should be sufficient.
|
||||
|
||||
Developing against a shared repository
|
||||
--------------------------------------
|
||||
|
|
|
@ -341,8 +341,11 @@ static int update_one(struct cache_tree *it,
|
|||
|
||||
if (dryrun)
|
||||
hash_sha1_file(buffer.buf, buffer.len, tree_type, it->sha1);
|
||||
else
|
||||
write_sha1_file(buffer.buf, buffer.len, tree_type, it->sha1);
|
||||
else if (write_sha1_file(buffer.buf, buffer.len, tree_type, it->sha1)) {
|
||||
strbuf_release(&buffer);
|
||||
return -1;
|
||||
}
|
||||
|
||||
strbuf_release(&buffer);
|
||||
it->entry_count = i;
|
||||
#if DEBUG
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
#!/bin/sh
|
||||
|
||||
test_description='detect unwritable repository and fail correctly'
|
||||
|
||||
. ./test-lib.sh
|
||||
|
||||
test_expect_success setup '
|
||||
|
||||
>file &&
|
||||
git add file &&
|
||||
git commit -m initial &&
|
||||
echo >file &&
|
||||
git add file
|
||||
|
||||
'
|
||||
|
||||
test_expect_success 'write-tree should notice unwritable repository' '
|
||||
|
||||
(
|
||||
chmod a-w .git/objects
|
||||
test_must_fail git write-tree
|
||||
)
|
||||
status=$?
|
||||
chmod 775 .git/objects
|
||||
(exit $status)
|
||||
|
||||
'
|
||||
|
||||
test_expect_success 'commit should notice unwritable repository' '
|
||||
|
||||
(
|
||||
chmod a-w .git/objects
|
||||
test_must_fail git commit -m second
|
||||
)
|
||||
status=$?
|
||||
chmod 775 .git/objects
|
||||
(exit $status)
|
||||
|
||||
'
|
||||
|
||||
test_expect_success 'update-index should notice unwritable repository' '
|
||||
|
||||
(
|
||||
echo a >file &&
|
||||
chmod a-w .git/objects
|
||||
test_must_fail git update-index file
|
||||
)
|
||||
status=$?
|
||||
chmod 775 .git/objects
|
||||
(exit $status)
|
||||
|
||||
'
|
||||
|
||||
test_expect_success 'add should notice unwritable repository' '
|
||||
|
||||
(
|
||||
echo b >file &&
|
||||
chmod a-w .git/objects
|
||||
test_must_fail git add file
|
||||
)
|
||||
status=$?
|
||||
chmod 775 .git/objects
|
||||
(exit $status)
|
||||
|
||||
'
|
||||
|
||||
test_done
|
|
@ -209,19 +209,7 @@ test_expect_success 'push with weak ambiguity (2)' '
|
|||
|
||||
'
|
||||
|
||||
test_expect_success 'push with ambiguity (1)' '
|
||||
|
||||
mk_test remotes/origin/master remotes/frotz/master &&
|
||||
if git push testrepo master:master
|
||||
then
|
||||
echo "Oops, should have failed"
|
||||
false
|
||||
else
|
||||
check_push_result $the_first_commit remotes/origin/master remotes/frotz/master
|
||||
fi
|
||||
'
|
||||
|
||||
test_expect_success 'push with ambiguity (2)' '
|
||||
test_expect_success 'push with ambiguity' '
|
||||
|
||||
mk_test heads/frotz tags/frotz &&
|
||||
if git push testrepo master:frotz
|
||||
|
|
Загрузка…
Ссылка в новой задаче