X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=README.md;h=78acb9e831384e14665abc74d6f5afcbdccb11b1;hb=b3f50653a32ee3d398d141280cdc9d7f93402ed0;hp=81d94e7caab01b81e1d7f14b7986196de6a84823;hpb=9a8a11478f330242197e4ce3f8c7f6b5558dcce4;p=nailing-cargo.git diff --git a/README.md b/README.md index 81d94e7..78acb9e 100644 --- a/README.md +++ b/README.md @@ -280,6 +280,9 @@ Options * `-n`: "No action": stop after writing `Cargo.toml.nailing~` everywhere, and do not run any build command. + * `-f` | `--force`: Force going ahead even if problems are likely. + (E.g., due to missing `-E` option.) + * `-T` | `--target=` Specify target architecture. @@ -367,7 +370,8 @@ WASM="wasm32-unknown-unknown" * `lock_update`: cargo will want to update `Cargo.lock`. (The `-u` and `-U` options override this.) * `online`: this subcommand makes no sense to run offline. (The `-o` and `-O` options, and the configuration, can override this.) - * `edits`: The purpose of this subcommand is to edit the source tree. Enables `--edit-sources` mode. + * `edits`: The purpose of this subcommand is to edit the source tree. Imples that `--edit-sources` is necessary (unless `--force`). + * `creates`: The purpose of this subcommand is to edit the source tree and create new files in it. Imples that `-EE` (`--edit-sources`, twice) is necessary (unless `--force`). * `!target`: cargo would reject `--target=`; in this case nailing-cargo's `-T` option is ineffective. * `!target-dir`: cargo would reject `--target-dir`, so don't pass it. (Usually we pass `--target-dir=target` when we pass `--manifest-path`, since cargo's default is `target` in the same directory as `Cargo.toml`.) * `linkfarm-shallow`: Make the default be `--linkfarm=shallow`. This is the default for `miri` and can also be used for other subcommands which do not understandg `--manifest-path` properly. @@ -418,11 +422,19 @@ WASM="wasm32-unknown-unknown" tracked filles* can be edited by the cargo command; edits to other files, and creation of new files, will be ignored. + When this option is repeated (**`-EE`**), the cargo subcommand can + create new files including dotfiles (but nothing in the toplevel + `target` and nothing called `.git`). (This also enables + `--preclean=src` by default.) + If you are running out of tree builds for privsep reasons, you should use git to review the edits made by the cargo command and either stage and commit them, or reject them. - This is the default mode for `nailing-cargo fmt`. + This option is overridden by a subsequent `--linkfarm` options. + + `-E` or `-f` is needed for `nailing-cargo fmt`. `-EE` or `-f` is + needed for `nailing-cargo init`. (`-E` is never the default.) * `--just-linkfarm[=shallow|git|full]`: Make the out-of-tree linkfarm as if for `--cargo-lock-update`, but do not actually run