diff --git a/lib/gitlab/backend/gitolite_config.rb b/lib/gitlab/backend/gitolite_config.rb
index a54608eb557f3f2a34b0ae5c30802091414169a1..cb93186152152348c9e3621afe7da868160344aa 100644
--- a/lib/gitlab/backend/gitolite_config.rb
+++ b/lib/gitlab/backend/gitolite_config.rb
@@ -192,7 +192,9 @@ module Gitlab
     def push tmp_dir
       Dir.chdir(File.join(tmp_dir, "gitolite"))
       raise "Git add failed." unless system('git add -A')
-      raise "Git commit failed." unless system('git commit -am "GitLab"')
+      system('git commit -m "GitLab"') # git commit returns 0 on success, and 1 if there is nothing to commit
+      raise "Git commit failed." unless [0,1].include? $?.exitstatus
+
       if system('git push')
         Dir.chdir(Rails.root)
       else