From f4e0eef11a92c32b6b13857a3c1ecdda2fda6478 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Mon, 15 Jan 2018 17:07:56 -0500 Subject: [PATCH] cargo_new: drop the trailing slash for target exclusion in Git When `target` is a symlink (e.g., to keep build outputs on a separate partition), Git will not match the `/target/` ignore to the symlink since it is not a directory. Drop the trailing slash to support ignoring `target` as a symlink. --- src/cargo/ops/cargo_new.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cargo/ops/cargo_new.rs b/src/cargo/ops/cargo_new.rs index 8fc52b4c6..c0d751d38 100644 --- a/src/cargo/ops/cargo_new.rs +++ b/src/cargo/ops/cargo_new.rs @@ -404,7 +404,7 @@ fn mk(config: &Config, opts: &MkOptions) -> CargoResult<()> { let name = opts.name; let cfg = global_config(config)?; // Please ensure that ignore and hgignore are in sync. - let ignore = ["\n", "/target/\n", "**/*.rs.bk\n", + let ignore = ["\n", "/target\n", "**/*.rs.bk\n", if !opts.bin { "Cargo.lock\n" } else { "" }] .concat(); // Mercurial glob ignores can't be rooted, so just sticking a 'syntax: glob' at the top of the -- 2.30.2