diff --git a/reviewboard/reviews/forms.py b/reviewboard/reviews/forms.py
--- a/reviewboard/reviews/forms.py
+++ b/reviewboard/reviews/forms.py
@@ -14,7 +14,7 @@ from reviewboard.scmtools.errors import SCMError, ChangeNumberInUseError, \
                                         InvalidChangeNumberError, \
                                         ChangeSetError
 from reviewboard.scmtools.models import Repository
-
+from reviewboard.scmtools.git import GitTool
 
 class DefaultReviewerForm(forms.ModelForm):
     name = forms.CharField(
@@ -193,6 +193,14 @@ class NewReviewRequestForm(forms.Form):
                 pass
 
             try:
+                tool = repository.get_scmtool()
+                if isinstance(tool, GitTool):
+                    """Check to see if we have a valid SHA1 hash"""
+                    for f in tool.get_parser(diff_file.read()).parse():
+                        f2, revision = tool.parse_diff_revision(f.origFile, f.origInfo)
+                        if len(revision) != 40:
+                            raise Exception("Please use --full-index when making a diff")
+                    diff_file.seek(0, 0)
                 diff_form.create(diff_file, parent_diff_file,
                                  attach_to_history=True)
                 if 'path' in diff_form.errors:
