diff --git a/rbtools/clients/git.py b/rbtools/clients/git.py
index 7be555d945d34ef829082a11917201399d786cef..4ca981325f377ea84c861dd1d38835297e71a3e4 100644
--- a/rbtools/clients/git.py
+++ b/rbtools/clients/git.py
@@ -517,7 +517,8 @@ class GitClient(SCMClient):
                 git_cmd.extend(['-c', 'diff.noprefix=false'])
 
             if (self.capabilities is not None and
-                self.capabilities.has_capability('diffs', 'moved_files')):
+                self.capabilities.has_capability('diffs', 'moved_files') and
+                not self.options.no_renames):
                 diff_cmd_params.append('-M')
             else:
                 diff_cmd_params.append('--no-renames')
diff --git a/rbtools/commands/__init__.py b/rbtools/commands/__init__.py
index 8b091e8682241567a694c70a8fb5df518986defc..554edbb0a6f54d7c1d676194c14cca027617445b 100644
--- a/rbtools/commands/__init__.py
+++ b/rbtools/commands/__init__.py
@@ -524,6 +524,21 @@ class Command(object):
         ]
     )
 
+    git_options = OptionGroup(
+        name='GIT Options',
+        description='Git-specific options for controlling diff '
+                    'generation.',
+        option_list=[
+            Option('--no-renames',
+                   dest='no_renames',
+                   action='store_true',
+                   default=False,
+                   help='Turn off rename detection, '
+                        'even when the configuration file '
+                        'sgives the default to do so.'),
+        ]
+    )
+
     def __init__(self):
         self.log = logging.getLogger('rb.%s' % self.name)
 
diff --git a/rbtools/commands/diff.py b/rbtools/commands/diff.py
index b19d8b36f8c20f958b07aa2e1e35d32571ffb719..c85b1be72cb37531361bb17e3904905c685a939b 100644
--- a/rbtools/commands/diff.py
+++ b/rbtools/commands/diff.py
@@ -17,6 +17,7 @@ class Diff(Command):
         Command.perforce_options,
         Command.subversion_options,
         Command.tfs_options,
+        Command.git_options,
     ]
 
     def main(self, *args):
diff --git a/rbtools/commands/post.py b/rbtools/commands/post.py
index 3573d1fab9c5589f950ce622f7c2b6b58ed1f55e..c27b9d74eaa485bdb2b5c08c793e1eea9772aab6 100644
--- a/rbtools/commands/post.py
+++ b/rbtools/commands/post.py
@@ -255,6 +255,7 @@ class Post(Command):
         Command.perforce_options,
         Command.subversion_options,
         Command.tfs_options,
+        Command.git_options,
     ]
 
     def post_process_options(self):
