diff options
Diffstat (limited to 'src/git.rs')
-rw-r--r-- | src/git.rs | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -50,11 +50,11 @@ pub fn init(repo_name: &str) -> Result<GitInitResult, ShackleError> { } pub fn upload_pack(upload_pack_args: &GitUploadPackArgs) -> Result<(), ShackleError> { - let mut command = Command::new("git-upload-pack"); if !is_valid_personal_git_repo(&upload_pack_args.directory)? { return Err(ShackleError::InvalidDirectory); } + let mut command = Command::new("git-upload-pack"); if upload_pack_args.strict { command.arg("strict"); } @@ -70,7 +70,6 @@ pub fn upload_pack(upload_pack_args: &GitUploadPackArgs) -> Result<(), ShackleEr if upload_pack_args.advertise_refs { command.arg("advertise-refs"); } - command.arg(&upload_pack_args.directory); command.spawn()?.wait()?; @@ -78,12 +77,14 @@ pub fn upload_pack(upload_pack_args: &GitUploadPackArgs) -> Result<(), ShackleEr } pub fn receive_pack(receive_pack_args: &GitReceivePackArgs) -> Result<(), ShackleError> { - let mut command = Command::new("git-receive-pack"); + if !is_valid_personal_git_repo(&receive_pack_args.directory)? { + return Err(ShackleError::InvalidDirectory); + } + let mut command = Command::new("git-receive-pack"); if receive_pack_args.http_backend_info_refs { command.arg("--http-backend-info-refs"); } - command.arg(&receive_pack_args.directory); command.spawn()?.wait()?; |