Index: wp-admin/includes/ajax-actions.php
===================================================================
--- wp-admin/includes/ajax-actions.php	(revision 24177)
+++ wp-admin/includes/ajax-actions.php	(working copy)
@@ -2117,6 +2117,8 @@
 	$right_handle_at = ! empty( $_GET['right_handle_at'] ) ? (int) $_GET['right_handle_at'] : 0;
 	$left_handle_at = ! empty( $_GET['left_handle_at'] ) ? (int) $_GET['left_handle_at'] : 0;
 	$single_revision_id = ! empty( $_GET['single_revision_id'] ) ? absint( $_GET['single_revision_id'] ) : 0;
+	$pageSize = ! empty( $_GET['pageSize'] ) ? absint( $_GET['pageSize'] ) : -1;
+	$page = ! empty( $_GET['page'] ) ? absint( $_GET['page'] ) : 1;
 	$compare_two_mode = (bool) $post_id;
 
 	//
@@ -2131,7 +2133,7 @@
 	if ( ! current_user_can( 'read_post', $post_id ) )
 		continue;
 
-	if ( ! $revisions = wp_get_post_revisions( $post_id ) )
+	if ( ! $revisions = wp_get_post_revisions( $post_id, array( 'posts_per_page' => $pageSize, 'paged' => $page ) ) )
 		return;
 
 	$left_revision = get_post( $compare_to );
Index: wp-admin/js/revisions.js
===================================================================
--- wp-admin/js/revisions.js	(revision 24177)
+++ wp-admin/js/revisions.js	(working copy)
@@ -237,7 +237,39 @@
 			this.reloadLeft();
 			this.reloadRight();
 		},
+		
+		loadPage: function( page ) {
+			var self = this;
 
+			self.startRightModelLoading();
+
+			self.revisions.reload({
+				options: {
+					'showAutosaves': self.autosaves,
+					'showSplitView': self.showSplitView,
+					'numberposts'  : 5,
+					'page' : page
+				},
+
+				success: function() {
+					var revisionCount = self.revisions.length;
+					self.revisionView.model = self.revisions;
+					self.revisionView.render();
+					self.loadDiffs( self.revisions );
+					self.tickmarkView.model = self.revisions;
+					self.tickmarkView.render();
+					self.slider.refresh({
+						'max': revisionCount - 1,
+						'value': self.rightDiff - 1
+					}, true);
+				},
+
+				error: function() {
+					self.stopRightModelLoading();
+				}
+			});
+		},
+
 		disabledButtonCheck: function( val ) {
 			var maxVal = this.revisions.length - 1,
 				next = $( '#next' ),
@@ -540,7 +572,8 @@
 		// next and previous buttons, only available in compare one mode
 		events: {
 			'click #next':     'nextRevision',
-			'click #previous': 'previousRevision'
+			'click #previous': 'previousRevision',
+			'click .paginate': 'changePage'
 		},
 
 		render: function() {
@@ -600,6 +633,13 @@
 			Diff.slider.refresh({
 				value: Diff.rightDiff - 1
 			}, true );
+		},
+		
+		changePage: function(e) {
+			$( '.paginate' 	).removeClass( 'button-disabled' );
+			$( e.currentTarget ).addClass( 'button-disabled' );
+			
+			Diff.loadPage( $( e.currentTarget ).data( 'id' ) );
 		}
 	});
 
@@ -751,6 +791,8 @@
 				'showSplitView': true,
 				'rightHandleAt': 0,
 				'leftHandleAt': 0,
+				'pageSize' : revisions.model.settings.pageSize,
+				'page' : 1,
 				'nonce': revisions.model.settings.nonce
 			});
 		},
@@ -764,6 +806,8 @@
 				'&show_split_view=' + this.options.showSplitView +
 				'&right_handle_at=' + this.options.rightHandleAt +
 				'&left_handle_at=' + this.options.leftHandleAt +
+				'&pageSize=' + this.options.pageSize +
+				'&page=' + this.options.page +
 				'&nonce=' + this.options.nonce;
 		},
 
Index: wp-admin/revision.php
===================================================================
--- wp-admin/revision.php	(revision 24177)
+++ wp-admin/revision.php	(working copy)
@@ -82,7 +82,8 @@
 $settings = array(
 	'post_id'     => $post->ID,
 	'nonce'       => wp_create_nonce( 'revisions-ajax-nonce' ),
-	'revision_id' => $revision_id
+	'revision_id' => $revision_id,
+	'pageSize' 	  => 5
 );
 
 wp_localize_script( 'revisions', 'wpRevisionsSettings', $settings );
@@ -170,6 +171,14 @@
 	</div>
 
 	<div id="diff-slider" class="wp-slider"></div>
+	
+	<div id="diff-paginate" style="text-align: center; margin: 5px 0 0 0;">
+		<?php 
+		$pages = count( wp_get_post_revisions( $post->ID ) ) / $settings['pageSize'];
+		for( $i = 1; $i <= $pages; $i++ )
+			echo '<input class="button'.($i==1 ? ' button-disabled' : '').' paginate" type="button" value="'.$i.'" data-id="'.$i.'" />';
+		?>
+	</div>
 </script>
 
 <script id="tmpl-revision-ticks" type="text/html">
