Crates.io | cargo-clone |
lib.rs | cargo-clone |
version | 1.2.1 |
source | src |
created_at | 2016-04-16 19:05:10.58864 |
updated_at | 2023-12-13 10:02:53.646246 |
description | A cargo subcommand to fetch the source code of a Rust crate |
homepage | https://github.com/JanLikar/cargo-clone |
repository | https://github.com/JanLikar/cargo-clone |
max_upload_size | |
id | 4767 |
size | 92,429 |
cargo-clone can be used to fetch the source code of a Rust crate from a registry.
cargo clone [FLAGS] [OPTIONS] <crate>... [-- <directory>]
cargo-clone is a Cargo subcommand.
cargo install cargo-clone
cargo clone [FLAGS] [OPTIONS] <crate>... [-- <directory>]
To download cargo-clone's code you would use
cargo clone cargo-clone
The latest available version is downloaded by default. If specific versions are desired, semver specifiers can be appended to crate names.
cargo clone cargo-clone@1.0.0
Versions are matched exactly by default, but other kinds of matching are also allowed.
cargo clone cargo-clone@~1.0.0
Using the --git
flag runs git clone
on each git repository url extracted from crate's metadata.
These lines are roughly equivalent:
cargo clone --git cargo-clone
git clone https://github.com/janlikar/cargo-clone
The command fails if a crate does not have the repository field set to a valid git repository.
Crates are downloaded into $PWD/$CRATE_NAME
by default.
The output dir can be specified as the last argument:
cargo clone cargo-clone -- foo # Downloads into $PWD/foo
If multiple packages are downloaded at the same time or if the directory contains a trailing slash, the packages will be downloaded into subdirectories of the path provided.
cargo clone cargo-clone -- pkgs/ # Creates pkgs/cargo-clone/
cargo clone cargo serde -- pkgs2/ # Creates pkgs/cargo and pkgs/serde
Contributions are welcome. Feel free to open a PR into develop branch.
When running locally, you can run using cargo run -- clone CRATE
or cargo-clone clone CRATE
.
By opening a PR you agree to license your code under Apache/MIT licenses.