Add merge type setting to repository page.

The merge type is a per repository setting. Add it to the edit page.
diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
index eb92e2d..eefebcc 100644
--- a/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
+++ b/src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
@@ -659,6 +659,7 @@
 gb.body = body
 gb.mergeSha = mergeSha
 gb.mergeTo = merge to
+gb.mergeType = merge type
 gb.labels = labels
 gb.reviewers = reviewers
 gb.voters = voters
@@ -670,6 +671,7 @@
 gb.serverDoesNotAcceptPatchsets = This server does not accept patchsets.
 gb.ticketIsClosed = This ticket is closed.
 gb.mergeToDescription = default integration branch for merging ticket patchsets
+gb.mergeTypeDescription = merge a ticket fast-forward only, if necessary, or always with a merge commit to the integration branch
 gb.anonymousCanNotPropose = Anonymous users can not propose patchsets.
 gb.youDoNotHaveClonePermission = You are not permitted to clone this repository.
 gb.myTickets = my tickets
@@ -741,4 +743,4 @@
 gb.permission = Permission
 gb.sshKeyPermissionDescription = Specify the access permission for the SSH key
 gb.transportPreference = Transport Preference
-gb.transportPreferenceDescription = Set the transport that you prefer to use for cloning
\ No newline at end of file
+gb.transportPreferenceDescription = Set the transport that you prefer to use for cloning
diff --git a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.html b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.html
index 1e683b4..e7fa601 100644
--- a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.html
+++ b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.html
@@ -122,7 +122,8 @@
 			<div wicket:id="acceptNewTickets"></div>

 			<div wicket:id="requireApproval"></div>

 			<div wicket:id="mergeTo"></div>

-		

+			<div wicket:id="mergeType"></div>

+

 		</div>

 				

 		<!-- federation -->

diff --git a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java
index b5c46ac..a13c481 100644
--- a/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/EditRepositoryPage.java
@@ -56,6 +56,7 @@
 import com.gitblit.Constants.AuthorizationControl;

 import com.gitblit.Constants.CommitMessageRenderer;

 import com.gitblit.Constants.FederationStrategy;

+import com.gitblit.Constants.MergeType;

 import com.gitblit.Constants.RegistrantType;

 import com.gitblit.GitBlitException;

 import com.gitblit.Keys;

@@ -458,6 +459,11 @@
 				getString("gb.mergeToDescription"),

 				new PropertyModel<String>(repositoryModel, "mergeTo"),

 				availableBranches));

+		form.add(new ChoiceOption<MergeType>("mergeType",

+				getString("gb.mergeType"),

+				getString("gb.mergeTypeDescription"),

+				new PropertyModel<MergeType>(repositoryModel, "mergeType"),

+				Arrays.asList(MergeType.values())));

 

 		//

 		// RECEIVE