diff --git a/gitweb.cgi b/gitweb.cgi
index b8f153788a..615af99e2c 100755
--- a/gitweb.cgi
+++ b/gitweb.cgi
@@ -2047,6 +2047,7 @@ sub git_history {
escapeHTML(chop_str($co{'title'}, 50)) . "") . "\n" .
"
" .
$cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit"}, "commit") .
+ " | " . $cgi->a({-href => "$my_uri?p=$project;a=commitdiff;h=$commit"}, "commitdiff") .
" | " . $cgi->a({-href => "$my_uri?p=$project;a=blob;hb=$commit;f=$file_name"}, "blob");
my $blob = git_get_hash_by_path($hash, $file_name);
my $blob_parent = git_get_hash_by_path($commit, $file_name);
diff --git a/test/file with spaces b/test/file with spaces
new file mode 100644
index 0000000000..e6a87a60e4
--- /dev/null
+++ b/test/file with spaces
@@ -0,0 +1,4 @@
+This
+filename
+has
+spaces.
diff --git a/test/file+plus+sign b/test/file+plus+sign
new file mode 100644
index 0000000000..ab8050ceb4
--- /dev/null
+++ b/test/file+plus+sign
@@ -0,0 +1,6 @@
+This
+file
+has
++
+plus
+chars.
|