forked from rojo-rbx/rojo
Add flag for skipping git initialization to init command (#1122)
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
* Added flag to `rojo init` to skip initializing a git repository ([#1122])
|
||||||
* Added fallback method for when an Instance can't be synced through normal means ([#1030])
|
* Added fallback method for when an Instance can't be synced through normal means ([#1030])
|
||||||
This should make it possible to sync `MeshParts` and `Unions`!
|
This should make it possible to sync `MeshParts` and `Unions`!
|
||||||
|
|
||||||
@@ -19,6 +20,7 @@
|
|||||||
* Added `--absolute` flag to the sourcemap subcommand, which will emit absolute paths instead of relative paths. ([#1092])
|
* Added `--absolute` flag to the sourcemap subcommand, which will emit absolute paths instead of relative paths. ([#1092])
|
||||||
* Fixed applying `gameId` and `placeId` before initial sync was accepted ([#1104])
|
* Fixed applying `gameId` and `placeId` before initial sync was accepted ([#1104])
|
||||||
|
|
||||||
|
[#1122]: https://github.com/rojo-rbx/rojo/pull/1122
|
||||||
[#1030]: https://github.com/rojo-rbx/rojo/pull/1030
|
[#1030]: https://github.com/rojo-rbx/rojo/pull/1030
|
||||||
[#1096]: https://github.com/rojo-rbx/rojo/pull/1096
|
[#1096]: https://github.com/rojo-rbx/rojo/pull/1096
|
||||||
[#1093]: https://github.com/rojo-rbx/rojo/pull/1093
|
[#1093]: https://github.com/rojo-rbx/rojo/pull/1093
|
||||||
|
|||||||
@@ -22,15 +22,22 @@ const GIT_IGNORE_PLACEHOLDER: &str = "gitignore.txt";
|
|||||||
static TEMPLATE_BINCODE: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/templates.bincode"));
|
static TEMPLATE_BINCODE: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/templates.bincode"));
|
||||||
|
|
||||||
/// Initializes a new Rojo project.
|
/// Initializes a new Rojo project.
|
||||||
|
///
|
||||||
|
/// By default, this will attempt to initialize a 'git' repository in the
|
||||||
|
/// project directory if `git` is installed. To avoid this, pass `--skip-git`.
|
||||||
#[derive(Debug, Parser)]
|
#[derive(Debug, Parser)]
|
||||||
pub struct InitCommand {
|
pub struct InitCommand {
|
||||||
/// Path to the place to create the project. Defaults to the current directory.
|
/// Path to the place to create the project. Defaults to the current directory.
|
||||||
#[clap(default_value = "")]
|
#[clap(default_value = "")]
|
||||||
pub path: PathBuf,
|
pub path: PathBuf,
|
||||||
|
|
||||||
/// The kind of project to create, 'place', 'plugin', or 'model'. Defaults to place.
|
/// The kind of project to create, 'place', 'plugin', or 'model'.
|
||||||
#[clap(long, default_value = "place")]
|
#[clap(long, default_value = "place")]
|
||||||
pub kind: InitKind,
|
pub kind: InitKind,
|
||||||
|
|
||||||
|
/// Skips the initialization of a git repository.
|
||||||
|
#[clap(long)]
|
||||||
|
pub skip_git: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl InitCommand {
|
impl InitCommand {
|
||||||
@@ -73,7 +80,7 @@ impl InitCommand {
|
|||||||
} else {
|
} else {
|
||||||
let content = vfs.read_to_string_lf_normalized(&path)?;
|
let content = vfs.read_to_string_lf_normalized(&path)?;
|
||||||
if let Some(file_stem) = path.file_name().and_then(OsStr::to_str) {
|
if let Some(file_stem) = path.file_name().and_then(OsStr::to_str) {
|
||||||
if file_stem == GIT_IGNORE_PLACEHOLDER {
|
if file_stem == GIT_IGNORE_PLACEHOLDER && !self.skip_git {
|
||||||
path.set_file_name(".gitignore");
|
path.set_file_name(".gitignore");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -84,7 +91,7 @@ impl InitCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if should_git_init(&base_path) {
|
if !self.skip_git && should_git_init(&base_path) {
|
||||||
log::debug!("Initializing Git repository...");
|
log::debug!("Initializing Git repository...");
|
||||||
|
|
||||||
let status = Command::new("git")
|
let status = Command::new("git")
|
||||||
|
|||||||
Reference in New Issue
Block a user