summaryrefslogtreecommitdiff
path: root/t/helper/test-write-cache.c
blob: b37dd2c5d6db64d5ff0b8e0f6689f14fe59700d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#define USE_THE_REPOSITORY_VARIABLE

#include "test-tool.h"
#include "lockfile.h"
#include "read-cache-ll.h"
#include "repository.h"
#include "setup.h"

int cmd__write_cache(int argc, const char **argv)
{
	struct lock_file index_lock = LOCK_INIT;
	int i, cnt = 1;
	if (argc == 2)
		cnt = strtol(argv[1], NULL, 0);
	setup_git_directory();
	repo_read_index(the_repository);
	for (i = 0; i < cnt; i++) {
		repo_hold_locked_index(the_repository, &index_lock,
				       LOCK_DIE_ON_ERROR);
		if (write_locked_index(the_repository->index, &index_lock, COMMIT_LOCK))
			die("unable to write index file");
	}

	return 0;
}