diff --git a/src/create_hooks.rs b/src/create_hooks.rs index 7e98eed7b1cf417e168d272e73f9f461a06994d0..7f6d642816eb96612da8cf20ad3fbbe581cd8fe6 100644 --- a/src/create_hooks.rs +++ b/src/create_hooks.rs @@ -33,6 +33,7 @@ fn get_hooks_folder() -> PathBuf { } let mut p = PathBuf::from(&string_path); p.push(".git"); + p.push("hooks"); if !p.is_dir() { eprintln!("Folder {} not found !", p.to_str().unwrap()); exit(5); @@ -56,7 +57,7 @@ fn create_file(folder: &PathBuf, file_name: &str, content: &str) { ); return (); } - let mut file = File::open(&hfile).unwrap_or_else(|e| { + let mut file = File::create(&hfile).unwrap_or_else(|e| { eprintln!( "Unable to create the file {}.\n{}", hfile.to_str().unwrap(), @@ -75,7 +76,7 @@ fn create_file(folder: &PathBuf, file_name: &str, content: &str) { } /// Create 3 files in `.git/hooks` folder -/// +/// /// 1. Create pre-commit hook /// 2. Create pre-checkout hook /// 3. Create post-checkout hook @@ -86,8 +87,8 @@ pub fn create_hooks(compression: &str) { let pre_co_cmd = "gbl pre-co"; let post_co_cmd = "gbl checkout"; let v = vec![pre_commit_cmd, pre_co_cmd, post_co_cmd]; - let file_name = vec!["pre-commit", "pre-checkout", "post-checkout"]; - for (fname, c_cmd) in v.iter().zip(file_name.iter()) { + let file_name = vec!["post-commit", "pre-checkout", "post-checkout"]; + for (c_cmd, fname) in v.iter().zip(file_name.iter()) { let content = format!( "#!/bin/sh \n\ \n\