Re: [PATCH v8 38/44] refs.c: pack all refs before we start to rename a ref
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- May 21, 2014, 23:57 UTC
- Message-ID
- <20140521235741.GN12314@google.com>
- In-Reply-To
- <1400174999-26786-39-git-send-email-sahlberg@google.com>
Ronnie Sahlberg wrote:
> This means that most loose refs will no longer be present after the rename
Is this to handle the "git branch -m foo/bar foo" case or for some other purpose?
[...]
Show 9 quoted lines
> --- a/t/t3200-branch.sh > +++ b/t/t3200-branch.sh > @@ -289,7 +289,7 @@ test_expect_success 'renaming a symref is not allowed' ' > git symbolic-ref refs/heads/master2 refs/heads/master && > test_must_fail git branch -m master2 master3 && > git symbolic-ref refs/heads/master2 && > - test_path_is_file .git/refs/heads/master && > + test_path_is_missing .git/refs/heads/master && > test_path_is_missing .git/refs/heads/master3
It's kind of silly that this test is mucking about in the .git directory at all. Shouldn't the check be something like
git rev-parse --verify refs/heads/master && test_must_fail git symbolic-ref refs/heads/master3 && test_must_fail git rev-parse refs/heads/master3
?