diff --git a/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java b/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
index 3ca3d40..249700a 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
@@ -157,13 +157,18 @@
 
       for (RevCommit c : rw) {
         PatchSet ps = loadPatchSet(c, branch);
-        ChangeNotes notes =
-            notesFactory.create(reviewDb, project, ps.getId().getParentKey());
-        ObjectId content = createNoteContent(notes, ps);
-        if (content != null) {
-          monitor.update(1);
-          getNotes().set(c, content);
-          getMessage().append("* ").append(c.getShortMessage()).append("\n");
+        if (ps != null) {
+          ChangeNotes notes = notesFactory.create(reviewDb, project,
+              ps.getId().getParentKey());
+          ObjectId content = createNoteContent(notes, ps);
+          if (content != null) {
+            monitor.update(1);
+            getNotes().set(c, content);
+            getMessage().append("* ").append(c.getShortMessage()).append("\n");
+          }
+        } else {
+          log.debug("no note for this commit since it is a direct push: "
+              + c.getName().substring(0, 7));
         }
       }
     }
