diff --git a/src/main.rs b/src/main.rs
index 2e512f794e19a164c8f212e65ee171dd27e3ce30..0289246d1e3d9a53f5c5642768ad49eae240e9ef 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -56,6 +56,14 @@ struct Init {
     /// The compression to use automatically at each commit if hooks are created
     #[clap(short, long, default_value = "lz4")]
     compression: String,
+    /// The checkout mode used by gblk automatically after a git checkout: soft or hard.
+
+    /// The hard mode will delete every file in your results folder and extract
+    /// those corresponding to the commit targeted by the checkout.
+    ///
+    /// The soft mode will only update files that existed in the targeted checkout
+    #[clap(short, long, default_value = "hard")]
+    mode: String,
 }
 
 #[derive(Debug, Args)]
@@ -97,6 +105,14 @@ struct CreateHooks {
     /// The compression that will automatically be used after each commit
     #[clap(short, long, default_value = "lz4")]
     compression: String,
+    /// The checkout mode used by gblk automatically after a git checkout: soft or hard.
+
+    /// The hard mode will delete every file in your results folder and extract
+    /// those corresponding to the commit targeted by the checkout.
+    ///
+    /// The soft mode will only update files that existed in the targeted checkout
+    #[clap(short, long, default_value = "hard")]
+    mode: String,
 }
 
 fn main() {
@@ -104,7 +120,7 @@ fn main() {
 
     match args.commands {
         Commands::Init(init) => {
-            init::init_and_hook(init.hooks, &init.compression);
+            init::init_and_hook(init.hooks, &init.compression, &init.mode);
         }
         Commands::Commit(commit) => {
             commit::commit(commit.compression, String::from(""), commit.update);
@@ -119,7 +135,7 @@ fn main() {
             checkout::checkout(&co.mode);
         }
         Commands::CreateHooks(ch) => {
-            create_hooks::create_hooks(&ch.compression);
+            create_hooks::create_hooks(&ch.compression, &ch.mode);
         }
     }
 }