#include "cache.h"
#include "strbuf.h"
#include "quote.h"
+#include "cache-tree.h"
#define CHECKOUT_ALL 4
static const char *prefix;
static int to_tempfile;
static char topath[4][MAXPATHLEN+1];
-static struct checkout state = {
- .base_dir = "",
- .base_dir_len = 0,
- .force = 0,
- .quiet = 0,
- .not_new = 0,
- .refresh_cache = 0,
-};
+static struct checkout state;
static void write_tempfile_record (const char *name)
{
static const char checkout_cache_usage[] =
"git-checkout-index [-u] [-q] [-a] [-f] [-n] [--stage=[123]|all] [--prefix=<string>] [--temp] [--] <file>...";
-static struct cache_file cache_file;
+static struct lock_file lock_file;
int main(int argc, char **argv)
{
int all = 0;
int read_from_stdin = 0;
+ state.base_dir = "";
prefix = setup_git_directory();
git_config(git_default_config);
prefix_length = prefix ? strlen(prefix) : 0;
if (!strcmp(arg, "-u") || !strcmp(arg, "--index")) {
state.refresh_cache = 1;
if (newfd < 0)
- newfd = hold_index_file_for_update
- (&cache_file,
- get_index_file());
+ newfd = hold_lock_file_for_update
+ (&lock_file, get_index_file(), 1);
if (newfd < 0)
die("cannot open index.lock file.");
continue;
*/
if (state.refresh_cache) {
close(newfd); newfd = -1;
- rollback_index_file(&cache_file);
+ rollback_lock_file(&lock_file);
}
state.refresh_cache = 0;
}
if (0 <= newfd &&
(write_cache(newfd, active_cache, active_nr) ||
- commit_index_file(&cache_file)))
- die("Unable to write new cachefile");
+ close(newfd) || commit_lock_file(&lock_file)))
+ die("Unable to write new index file");
return 0;
}