diff --git a/src/main/java/com/googlesource/gerrit/plugins/download/command/CloneWithCommitMsgHook.java b/src/main/java/com/googlesource/gerrit/plugins/download/command/CloneWithCommitMsgHook.java
index dbb793c..971840b 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/download/command/CloneWithCommitMsgHook.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/download/command/CloneWithCommitMsgHook.java
@@ -29,6 +29,7 @@
   private static final String TARGET = " `git rev-parse --git-dir`/";
 
   private final String configCommand;
+  private final String extraCommand;
   private final SshScheme sshScheme;
   private final Provider<CurrentUser> userProvider;
 
@@ -36,6 +37,7 @@
   CloneWithCommitMsgHook(
       @GerritServerConfig Config config, SshScheme sshScheme, Provider<CurrentUser> userProvider) {
     this.configCommand = config.getString("gerrit", null, "installCommitMsgHookCommand");
+    this.extraCommand = config.getString("gerrit", null, "installCommitExtraCommand");
     this.sshScheme = sshScheme;
     this.userProvider = userProvider;
   }
@@ -77,6 +79,9 @@
           .append(projectName)
           .append("/.git/hooks/");
 
+      if (extraCommand != null) {
+        b.append(" && (cd ").append(projectName).append(" && ").append(extraCommand).append(")");
+      }
       return b.toString();
     }
 
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md
index 3e76bdb..3781f9e 100644
--- a/src/main/resources/Documentation/config.md
+++ b/src/main/resources/Documentation/config.md
@@ -74,7 +74,7 @@
 	advertisement (`uploadpack.hideRefs`). This option can be used to
 	hide the change refs from the client. As consequence fetching
 	changes by change ref does not work anymore. However by setting
-	`uploadpack.allowTipSha1InWant` to `true` fetching changes by
+	`uploadpack.allowTipSHA1InWant` to `true` fetching changes by
 	commit ID is possible. If `download.checkForHiddenChangeRefs` is
 	set to `true` the git download commands use the commit ID instead
 	of the change ref when a project is configured like this.
@@ -84,6 +84,28 @@
 		[uploadpack]
 		  hideRefs = refs/changes/
 		  hideRefs = refs/cache-automerge/
-		  allowTipSha1InWant = true
+		  allowTipSHA1InWant = true
 
 	By default `false`.
+
+
+### <a id="gerrit">Section gerrit</a>
+
+```
+[gerrit]
+  installCommitMsgHookCommand = command
+  installCommitExtraCommand = command
+```
+
+<a id="gerrit.installCommitMsgHookCommand">gerrit.installCommitMsgHookCommand</a>
+  Optional command to install the commit-msg hook. Typically of the form:
+  `fetch-cmd some://url/to/commit-msg .git/hooks/commit-msg ; chmod +x .git/hooks/commit-msg`
+  By default unset; falls back to using scp from the canonical SSH host,
+  or curl from the canonical HTTP URL for the server. Only necessary
+  if a proxy or other server/network configuration prevents clients
+  from fetching from the default location.
+
+<a id="gerrit.installCommitExtraCommand">gerrit.installCommitExtraCommand</a>
+  Optional command to complete the commit-msg hook. For example:
+  `git submodule update --init --recursive && git review -s`
+  would initialize the submodules and setup git review.
\ No newline at end of file
