diff --git a/src/main.rs b/src/main.rs index e72df2f..436510c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -6,10 +6,23 @@ fn main() -> eyre::Result<()> { let args = args.collect::>(); let args = args.iter().map(|s| s.as_str()).collect::>(); - let cmd = clap::Command::new("git-toolkit").allow_external_subcommands(true); + let cmd = clap::Command::new("git-toolkit") + .allow_external_subcommands(true) + .subcommand(clap::Command::new("cb").arg(clap::Arg::new("branch").required(true))) + .subcommand(clap::Command::new("c").arg(clap::Arg::new("branch").required(true))); let matches = cmd.get_matches_from(args.clone().as_slice()); match matches.subcommand() { + Some(("cb", args)) => { + let branch = args.get_one::("branch").unwrap(); + + prepend_git_shell(&["checkout", "-b", branch])?; + } + Some(("c", args)) => { + let branch = args.get_one::("branch").unwrap(); + + prepend_git_shell(&["checkout", branch])?; + } Some((_, args)) => { let raw = args .get_many::("")