state_dir_path("autostash", &options);
struct child_process stash = CHILD_PROCESS_INIT;
struct object_id oid;
- struct commit *head =
- lookup_commit_reference(the_repository,
- &options.orig_head);
+ struct object_id head_oid;
+ struct commit *head;
+
+ if (get_oid("HEAD", &head_oid))
+ die(_("could not determine HEAD revision"));
+ head = lookup_commit_reference(the_repository, &head_oid);
argv_array_pushl(&stash.args,
"stash", "create", "autostash", NULL);
test unchanged-branch = "$(git rev-parse --abbrev-ref HEAD)"
'
+test_expect_success 'never change active branch' '
+ git checkout -b not-the-feature-branch unrelated-onto-branch &&
+ test_when_finished "git reset --hard && git checkout master" &&
+ echo changed >file0 &&
+ git rebase --autostash not-the-feature-branch feature-branch &&
+ test_cmp_rev not-the-feature-branch unrelated-onto-branch
+'
+
test_done