mirror of
https://github.com/rust-lang/cargo.git
synced 2025-09-28 11:20:36 +00:00
Add --index
flag to cargo install
This commit is contained in:
parent
fb0e392399
commit
3fbd5aefd4
@ -18,7 +18,7 @@ pub fn cli() -> App {
|
||||
.arg(
|
||||
opt("git", "Git URL to install the specified crate from")
|
||||
.value_name("URL")
|
||||
.conflicts_with_all(&["path", "registry"]),
|
||||
.conflicts_with_all(&["path", "index", "registry"]),
|
||||
)
|
||||
.arg(
|
||||
opt("branch", "Branch to use when installing from git")
|
||||
@ -38,7 +38,7 @@ pub fn cli() -> App {
|
||||
.arg(
|
||||
opt("path", "Filesystem path to local crate to install")
|
||||
.value_name("PATH")
|
||||
.conflicts_with_all(&["git", "registry"]),
|
||||
.conflicts_with_all(&["git", "index", "registry"]),
|
||||
)
|
||||
.arg(opt(
|
||||
"list",
|
||||
@ -58,11 +58,17 @@ pub fn cli() -> App {
|
||||
)
|
||||
.arg_target_triple("Build for the target triple")
|
||||
.arg(opt("root", "Directory to install packages into").value_name("DIR"))
|
||||
.arg(
|
||||
opt("index", "Registry index to install from")
|
||||
.value_name("INDEX")
|
||||
.requires("crate")
|
||||
.conflicts_with_all(&["git", "path", "registry"]),
|
||||
)
|
||||
.arg(
|
||||
opt("registry", "Registry to use")
|
||||
.value_name("REGISTRY")
|
||||
.requires("crate")
|
||||
.conflicts_with_all(&["git", "path"]),
|
||||
.conflicts_with_all(&["git", "path", "index"]),
|
||||
)
|
||||
.after_help(
|
||||
"\
|
||||
@ -100,8 +106,6 @@ continuous integration systems.",
|
||||
}
|
||||
|
||||
pub fn exec(config: &mut Config, args: &ArgMatches<'_>) -> CliResult {
|
||||
let registry = args.registry(config)?;
|
||||
|
||||
if let Some(path) = args.value_of_path("path", config) {
|
||||
config.reload_rooted_at(path)?;
|
||||
} else {
|
||||
@ -143,8 +147,10 @@ pub fn exec(config: &mut Config, args: &ArgMatches<'_>) -> CliResult {
|
||||
} else if krates.is_empty() {
|
||||
from_cwd = true;
|
||||
SourceId::for_path(config.cwd())?
|
||||
} else if let Some(registry) = registry {
|
||||
} else if let Some(registry) = args.registry(config)? {
|
||||
SourceId::alt_registry(config, ®istry)?
|
||||
} else if let Some(index) = args.value_of("index") {
|
||||
SourceId::for_registry(&index.into_url()?)?
|
||||
} else {
|
||||
SourceId::crates_io(config)?
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user