Re: update-cache ./test.c
From: Lennert Buytenhek <hidden>
Date: 2016-06-15 22:41:55
On Sun, May 01, 2005 at 10:54:27AM +0200, Lennert Buytenhek wrote:
But that wasn't quite the point :) It makes sense that update-cache doesn't like ambiguous path names, but it's easier for update-cache to detect and strip "^./" than for me to remember to type sed "s#^./##" every time.
Something like this:
--- git/update-cache.c.orig 2005-05-01 10:56:17.859313581 +0200
+++ git/update-cache.c 2005-05-01 10:57:31.634897508 +0200@@ -328,6 +328,7 @@ for (i = 1 ; i < argc; i++) { char *path = argv[i]; + char *_path; if (allow_options && *path == '-') { if (!strcmp(path, "--")) {
@@ -358,12 +359,15 @@ } die("unknown option %s", path); } - if (!verify_path(path)) { + _path = path; + if (!strncmp(_path, "./", 2)) + _path += 2; + if (!verify_path(_path)) { fprintf(stderr, "Ignoring path %s\n", argv[i]); continue; } - if (add_file_to_cache(path)) - die("Unable to add %s to database", path); + if (add_file_to_cache(_path)) + die("Unable to add %s to database", _path); } if (write_cache(newfd, active_cache, active_nr) || rename(lockfile, indexfile)) die("Unable to write new cachefile");