Make "checkout-cache" silently skip up-to-date files.
It used to always overwrite them if forced. Now it just realizes that they are already ok, and don't need to be touched.maint
parent
40e88b95cd
commit
29d76d4b05
|
@ -96,12 +96,14 @@ static int write_entry(struct cache_entry *ce)
|
||||||
|
|
||||||
static int checkout_entry(struct cache_entry *ce)
|
static int checkout_entry(struct cache_entry *ce)
|
||||||
{
|
{
|
||||||
if (!force) {
|
struct stat st;
|
||||||
struct stat st;
|
|
||||||
|
|
||||||
if (!stat(ce->name, &st)) {
|
if (!stat(ce->name, &st)) {
|
||||||
unsigned changed = cache_match_stat(ce, &st);
|
unsigned changed = cache_match_stat(ce, &st);
|
||||||
if (changed && !quiet)
|
if (!changed)
|
||||||
|
return 0;
|
||||||
|
if (!force) {
|
||||||
|
if (!quiet)
|
||||||
fprintf(stderr, "checkout-cache: %s already exists\n", ce->name);
|
fprintf(stderr, "checkout-cache: %s already exists\n", ce->name);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
Loading…
Reference in New Issue