diff --git a/app/helpers/repositories_helper.rb b/app/helpers/repositories_helper.rb
index 9596287..d62e45a 100644
--- a/app/helpers/repositories_helper.rb
+++ b/app/helpers/repositories_helper.rb
@@ -19,7 +19,7 @@ require 'iconv'
 
 module RepositoriesHelper
   def format_revision(txt)
-    txt.to_s[0,8]
+    txt.to_s[0,Setting.repository_revision_truncation.to_i]
   end
   
   def truncate_at_line_break(text, length = 255)
diff --git a/app/models/changeset.rb b/app/models/changeset.rb
index 063a4a4..31c9ad1 100644
--- a/app/models/changeset.rb
+++ b/app/models/changeset.rb
@@ -23,7 +23,7 @@ class Changeset < ActiveRecord::Base
   has_many :changes, :dependent => :delete_all
   has_and_belongs_to_many :issues
 
-  acts_as_event :title => Proc.new {|o| "#{l(:label_revision)} #{o.revision}" + (o.short_comments.blank? ? '' : (': ' + o.short_comments))},
+  acts_as_event :title => Proc.new {|o| "#{l(:label_revision)} #{o.revision.to_s[0,Setting.repository_revision_truncation.to_i]}" + (o.short_comments.blank? ? '' : (': ' + o.short_comments))},
                 :description => :long_comments,
                 :datetime => :committed_on,
                 :url => Proc.new {|o| {:controller => 'repositories', :action => 'revision', :id => o.repository.project, :rev => o.revision}}
diff --git a/app/views/repositories/revision.rhtml b/app/views/repositories/revision.rhtml
index 92597df..08cd488 100644
--- a/app/views/repositories/revision.rhtml
+++ b/app/views/repositories/revision.rhtml
@@ -14,7 +14,7 @@
   &#187;&nbsp;
 
   <% form_tag({:controller => 'repositories', :action => 'revision', :id => @project, :rev => nil}, :method => :get) do %>
-    <%= text_field_tag 'rev', @rev[0,8], :size => 8 %>
+    <%= text_field_tag 'rev', @rev[0,Setting.repository_revision_truncation.to_i], :size => 8 %>
     <%= submit_tag 'OK', :name => nil %>
   <% end %>
 </div>
diff --git a/app/views/settings/_repositories.rhtml b/app/views/settings/_repositories.rhtml
index 198b832..11c6dbc 100644
--- a/app/views/settings/_repositories.rhtml
+++ b/app/views/settings/_repositories.rhtml
@@ -21,6 +21,7 @@
 <p><%= setting_select :commit_logs_encoding, Setting::ENCODINGS %></p>
 
 <p><%= setting_text_field :repository_log_display_limit, :size => 6 %></p>
+<p><%= setting_text_field :repository_revision_truncation, :size => 6 %></p>
 </div>
 
 <fieldset class="box tabular settings"><legend><%= l(:text_issues_ref_in_commit_messages) %></legend>
diff --git a/config/locales/bg.yml b/config/locales/bg.yml
index 8b2b237..8093917 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -898,3 +898,4 @@ bg:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/bs.yml b/config/locales/bs.yml
index 3d476ae..38803ef 100644
--- a/config/locales/bs.yml
+++ b/config/locales/bs.yml
@@ -922,3 +922,4 @@ bs:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 1e47d3d..0a8cd83 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -901,3 +901,4 @@ ca:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index de4ad44..50848c1 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -904,3 +904,4 @@ cs:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/da.yml b/config/locales/da.yml
index b241a52..9d56adb 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -924,3 +924,4 @@ da:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/de.yml b/config/locales/de.yml
index f7f9043..2efa05a 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -926,3 +926,4 @@ de:
   enumeration_activities: Aktivitäten (Zeiterfassung)
   enumeration_system_activity: System-Aktivität
 
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/el.yml b/config/locales/el.yml
index a9146a6..6fd12a5 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -904,3 +904,4 @@ el:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml
index 2872df1..0d2bdd3 100644
--- a/config/locales/en-GB.yml
+++ b/config/locales/en-GB.yml
@@ -907,3 +907,4 @@ en-GB:
   error_can_not_delete_tracker: This tracker contains issues and can't be deleted.
   notice_failed_to_save_members: "Failed to save member(s): {{errors}}."
   label_project_copy_notifications: Send email notifications during the project copy
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/en.yml b/config/locales/en.yml
index b3d8751..6c69b92 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -329,6 +329,7 @@ en:
   setting_diff_max_lines_displayed: Max number of diff lines displayed
   setting_file_max_size_displayed: Max size of text files displayed inline
   setting_repository_log_display_limit: Maximum number of revisions displayed on file log
+  setting_repository_revision_truncation: Revision number truncation length
   setting_openid: Allow OpenID login and registration
   setting_password_min_length: Minimum password length
   setting_new_project_user_role_id: Role given to a non-admin user who creates a project
diff --git a/config/locales/es.yml b/config/locales/es.yml
index bc345dc..3329003 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -948,3 +948,4 @@ es:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index 741d329..eb9769b 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -908,3 +908,4 @@ eu:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index b6b48ba..ba77dd9 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -934,3 +934,4 @@ fi:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 8eb82ad..2172aba 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -927,3 +927,4 @@ fr:
   text_zoom_in: Zoom avant
   notice_unable_delete_time_entry: Impossible de supprimer le temps passé.
   label_overall_spent_time: Temps passé global
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 2a1d97e..bdcd46a 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -924,3 +924,4 @@ gl:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 532c601..8fb9f61 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -913,3 +913,4 @@ he:
   enumeration_doc_categories: קטגוריות מסמכים
   enumeration_activities: פעילויות (מעקב אחר זמנים)
   enumeration_system_activity: פעילות מערכת
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/hr.yml b/config/locales/hr.yml
index 728a6d8..8b1dd75 100644
--- a/config/locales/hr.yml
+++ b/config/locales/hr.yml
@@ -911,3 +911,4 @@ hr:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 088027f..e967aa9 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -931,3 +931,4 @@
   text_zoom_in: Nagyít
   notice_unable_delete_time_entry: Az időrögzítés nem törölhető
   label_overall_spent_time: Összes rászánt idő
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/id.yml b/config/locales/id.yml
index ec6688e..6beaae8 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -916,3 +916,4 @@ id:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/it.yml b/config/locales/it.yml
index bab1c6a..ac0c9df 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -911,3 +911,4 @@ it:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index c82155b..b22c6c4 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -933,3 +933,4 @@ ja:
   enumeration_doc_categories: 文書カテゴリ
   enumeration_activities: 作業分類 (時間トラッキング)
   enumeration_system_activity: システム作業分類
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index d79c86c..fbb73c0 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -964,3 +964,4 @@ ko:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/lt.yml b/config/locales/lt.yml
index 9bcafc7..fe7beac 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -972,3 +972,4 @@ lt:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/lv.yml b/config/locales/lv.yml
index 351f852..d96d4e4 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -899,3 +899,4 @@ lv:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/mn.yml b/config/locales/mn.yml
index 568e1f3..b57c9bb 100644
--- a/config/locales/mn.yml
+++ b/config/locales/mn.yml
@@ -905,3 +905,4 @@ mn:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index 4472a19..a40f356 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -886,3 +886,4 @@ nl:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 7d49537..f3c3185 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -899,3 +899,4 @@
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 2dadc84..de2119f 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -929,3 +929,4 @@ pl:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index a66f237..d5b18bd 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -932,3 +932,4 @@ pt-BR:
   text_zoom_in: Aproximar zoom
   notice_unable_delete_time_entry: Não foi possível excluir a entrada no registro de horas trabalhadas.
   label_overall_spent_time: Tempo gasto geral
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/pt.yml b/config/locales/pt.yml
index 615f316..553ac9b 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -916,3 +916,4 @@ pt:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/ro.yml b/config/locales/ro.yml
index 45fdd1e..5021e36 100644
--- a/config/locales/ro.yml
+++ b/config/locales/ro.yml
@@ -901,3 +901,4 @@ ro:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index ee9ee37..1a075ef 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -1024,3 +1024,4 @@ ru:
   text_zoom_in: Приблизить
   notice_unable_delete_time_entry: Невозможно удалить запись журнала.
   label_overall_spent_time: Всего затрачено времени
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index 0b2351e..b8657cb 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -903,3 +903,4 @@ sk:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/sl.yml b/config/locales/sl.yml
index aac2e43..26780c1 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -903,3 +903,4 @@ sl:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/sr-CY.yml b/config/locales/sr-CY.yml
index 39cc5dc..99d1a08 100644
--- a/config/locales/sr-CY.yml
+++ b/config/locales/sr-CY.yml
@@ -905,3 +905,4 @@ sr-CY:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index f52d9e0..08f2da9 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -905,3 +905,4 @@ sr:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index 35ebc10..f613210 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -953,3 +953,4 @@ sv:
   enumeration_doc_categories: Dokumentkategorier
   enumeration_activities: Aktiviteter (tidsuppföljning)
   enumeration_system_activity: Systemaktivitet
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 2c127f3..1c64cbe 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -901,3 +901,4 @@ th:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index db43309..26b22eb 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -931,3 +931,4 @@ tr:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index 1a590dc..b677865 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -900,3 +900,4 @@ uk:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/vi.yml b/config/locales/vi.yml
index f8ca507..87b34ee 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -963,3 +963,4 @@ vi:
   text_zoom_in: Zoom in
   notice_unable_delete_time_entry: Unable to delete time log entry.
   label_overall_spent_time: Overall spent time
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 5a08041..0b8e2fd 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -993,3 +993,4 @@
   enumeration_doc_categories: 文件分類
   enumeration_activities: 活動 (時間追蹤)
   enumeration_system_activity: 系統活動
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index eeac629..9a94d18 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -926,3 +926,4 @@ zh:
   text_zoom_in: 放大
   notice_unable_delete_time_entry: 无法删除工时记录。
   label_overall_spent_time: 所有项目耗用工时
+  setting_repository_revision_truncation: Revision number truncation length
diff --git a/config/settings.yml b/config/settings.yml
index 1e905ed..45d7d31 100644
--- a/config/settings.yml
+++ b/config/settings.yml
@@ -166,6 +166,9 @@ commit_logs_encoding:
 repository_log_display_limit:
   format: int
   default: 100
+repository_revision_truncation:
+  format: int
+  default: 8
 ui_theme:
   default: ''
 emails_footer:
