diff options
Diffstat (limited to 'src/parser.rs')
-rw-r--r-- | src/parser.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/parser.rs b/src/parser.rs index b429572..5806cec 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -18,6 +18,8 @@ pub enum ShackleCommand { SetBranch(SetBranchArgs), /// Deletes a repository Delete(DeleteArgs), + /// Does any housekeeping, like deleting unreachable objects and repacking more efficiently + Housekeeping(HousekeepingArgs), /// Quit the shell Exit, /// Server side command required to git fetch from the server @@ -74,6 +76,13 @@ pub struct DeleteArgs { } #[derive(Parser, Clone, Debug, PartialEq, Eq)] +pub struct HousekeepingArgs { + /// The full relative path of the repository, for example + /// git/shuckie/repo.git. If omitted, all repos will be checked. + pub directory: Option<PathBuf>, +} + +#[derive(Parser, Clone, Debug, PartialEq, Eq)] pub struct GitUploadPackArgs { /// Do not try <directory>/.git/ if <directory> is no Git directory #[arg(long, default_value_t = true)] |