When working with one crate, you should know its Rust edition. If your crate is in edition 2015, simply adding the edition field does not make it magically work.
The cargo new command sets edition 2018 by default.
For convenient, I think that cargo new should avoid creating a .git directory when a .git directory already exists in one of the ancestor directories. But this should be in a separate proposal.
Try making pull request to rustc. It's relatively easy to implement, since the error is attached to a node which can tell you which edition it is, so it's a matter of adding extra info to the error based on that.
@kornel you mentioned this when updating the diagnostic. Have you changed your opinion about 2015-specific diagnostics? I personally think it would be good to help in situations like this.
I think discussing the pros and cons of cargo new is off topic here. Not everyone uses cargo new, which is fine. Adding a hint to use to the 2018 edition is a good idea IMHO.
It already does, which I find a little annoying because my home directory is a git repository, and I still want Cargo to create git repositories under it.