-> str('some.str');
$detached_config1 = undef;
$detached_config2 = undef;
unlink '.testconfig';
isnt -f '.testconfig', 1;
is $repo -> state, "none";
is $repo -> is_head_detached, 0;
my $commit_msg
'MERGE_MSG');
ok (open HANDLE, ">$commit_msg_file");
ok (close HANDLE);
$repo -> state_cleanup;
isnt -f $commit_msg_file, 1;
is $repo -> state, "none";
my $revert_head_file = catfile($repo -> path,
, ">$revert_head_file");
ok (close HANDLE);
is $repo -> state, "revert";
$repo -> state_cleanup;
isnt -f $revert_head_file, 1;
is $repo -> state, "none";
my $merge_head_file = catfile($repo -> path,
ration});
is $repo -> state, "rebase_merge";
is $repo -> is_head_detached, 1;
$rebase -> abort;
isnt $repo -> state, "rebase_merge";
# disk rebase
my $destination_branch = $repo -> branch('destinat
:Raw::Signature -> new($name, $email, time()+60, 0);
my $commit1_ = $rebase -> commit($me, $me);
isnt $commit1 -> id, $commit1_ -> id;
$op = $rebase -> next;
isa_ok $op, 'Git::Raw::Rebase::Operation
p -> id, $commit2 -> id;
ok (!defined($op -> exec));
my $commit2_ = $rebase -> commit($me, $me);
isnt $commit2 -> id, $commit2_ -> id;
$op = $rebase -> next;
$rebase = Git::Raw::Rebase -> open($repo
f;
$walk -> push_head;
my $commit = $walk -> next;
isnt $commit, undef;
is $commit -> summary, "third commit";
isnt $commit -> tree, undef;
isnt $commit -> parents, undef;
$walk -> reset;
$walk -
lk -> next, undef;
$walk -> reset;
$walk -> push_head;
$walk -> hide_glob('refs/heads/notmain');
isnt $walk -> next, undef;
$walk -> reset;
ok (!eval { $walk -> push_range('zzz', $end) });
ok (!eval
Raw::Worktree -> list($repo);
my @list = Git::Raw::Worktree -> list($repo);
is scalar (@list), 2;
isnt $list[0], $list[1];
like $list[1], qr'myworktree\d+';
like $list[0], qr'myworktree\d+';
my $coun
e_repo -> is_worktree);
is $worktree_repo -> commondir, $repo -> commondir;
isnt $worktree_repo -> path, $repo -> path;
isnt $worktree_repo -> workdir, $repo -> workdir;
ok ($worktree1 -> validate);
> checkout($repo -> head($cherry_pick_branch), {
'checkout_strategy' => {
'force' => 1
}
});
isnt -f $file1, 1;
is $repo -> status({}) -> {'cherry_file'}, undef;
$repo -> cherry_pick($commit1);
-> write_tree);
is $index -> has_conflicts, 0;
is $repo -> status({}) -> {'cherry_file'}, undef;
isnt $branch -> target -> tree -> id, $cherry_pick_conflict_branch -> target -> tree -> id;
is $repo -
ntries[1] -> message, qr/^checkout: moving from main to/;
ok (!eval {$repo -> detach_head()});
my $checksum = $index -> checksum;
is length ($checksum), 40;
isnt $checksum, '0' x 40;
done_testing;
a, $b) = @_;
is $ref, 'refs/remotes/origin/ssh_branch';
ok !defined($a);
ok defined($b);
isnt $a, $b;
$update_tips_fired = 1;
},
'push_update_reference' => sub {
my ($ref, $msg) = @_;
ble_checkout'));
$repo = Git::Raw::Repository -> clone($url, $path, {'disable_checkout' => 1 });
isnt -f catfile($repo -> workdir, 'Raw.xs'), 1;
my $state = undef;
my $total_objects = 0;
my $receive