diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2011-11-27 14:15:32 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-11-28 22:37:50 +0400 |
commit | fc001b526c42e5fb776340136a2fb247e391a61b (patch) | |
tree | 8f88d4cfde012085a03384b1f5a952c8de8541eb | |
parent | 87b50542a08ac6caa083ddc376e674424e37940a (diff) |
checkout,merge: loosen overwriting untracked file check based on info/exclude
Back in 1127148 (Loosen "working file will be lost" check in
Porcelain-ish - 2006-12-04), git-checkout.sh learned to quietly
overwrite ignored files. Howver the code only took .gitignore files
into account.
Standard ignored files include all specified in .gitignore files in
working directory _and_ $GIT_DIR/info/exclude. This patch makes sure
ignored files in info/exclude can also be overwritten automatically in
the spirit of the original patch.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/checkout.c | 2 | ||||
-rw-r--r-- | builtin/merge.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/builtin/checkout.c b/builtin/checkout.c index 560eae1715..2b90e6b5e2 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -401,7 +401,7 @@ static int merge_working_tree(struct checkout_opts *opts, topts.fn = twoway_merge; topts.dir = xcalloc(1, sizeof(*topts.dir)); topts.dir->flags |= DIR_SHOW_IGNORED; - topts.dir->exclude_per_dir = ".gitignore"; + setup_standard_excludes(topts.dir); tree = parse_tree_indirect(old->commit ? old->commit->object.sha1 : (unsigned char *)EMPTY_TREE_SHA1_BIN); diff --git a/builtin/merge.c b/builtin/merge.c index 5f65c0c8a6..29c43979bd 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -708,7 +708,7 @@ int checkout_fast_forward(const unsigned char *head, const unsigned char *remote memset(&t, 0, sizeof(t)); memset(&dir, 0, sizeof(dir)); dir.flags |= DIR_SHOW_IGNORED; - dir.exclude_per_dir = ".gitignore"; + setup_standard_excludes(&dir); opts.dir = &dir; opts.head_idx = 1; |