diff --git a/README.md b/README.md
index b7bb7b4db4..6435af02a2 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@ Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?bra
 
 ![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
 
-##### Current version: 0.8.27
+##### Current version: 0.8.28
 
 | Web | UI  | Preview  |
 |:-------------:|:-------:|:-------:|
diff --git a/gogs.go b/gogs.go
index 6659e909eb..5f68136813 100644
--- a/gogs.go
+++ b/gogs.go
@@ -17,7 +17,7 @@ import (
 	"github.com/gogits/gogs/modules/setting"
 )
 
-const APP_VER = "0.8.27.0202"
+const APP_VER = "0.8.28.0203"
 
 func init() {
 	runtime.GOMAXPROCS(runtime.NumCPU())
diff --git a/models/pull.go b/models/pull.go
index 47d80473a0..330319f9a8 100644
--- a/models/pull.go
+++ b/models/pull.go
@@ -256,6 +256,7 @@ var patchConflicts = []string{
 	"patch does not apply",
 	"already exists in working directory",
 	"unrecognized input",
+	"error:",
 }
 
 // testPatch checks if patch can be merged to base repository without conflit.
@@ -279,7 +280,7 @@ func (pr *PullRequest) testPatch() (err error) {
 		return nil
 	}
 
-	log.Trace("PullRequest[%d].testPatch(patchPath): %s", pr.ID, patchPath)
+	log.Trace("PullRequest[%d].testPatch (patchPath): %s", pr.ID, patchPath)
 
 	if err := pr.BaseRepo.UpdateLocalCopy(); err != nil {
 		return fmt.Errorf("UpdateLocalCopy: %v", err)
@@ -287,7 +288,7 @@ func (pr *PullRequest) testPatch() (err error) {
 
 	// Checkout base branch.
 	_, stderr, err := process.ExecDir(-1, pr.BaseRepo.LocalCopyPath(),
-		fmt.Sprintf("PullRequest.Merge(git checkout): %v", pr.BaseRepo.ID),
+		fmt.Sprintf("PullRequest.Merge (git checkout): %v", pr.BaseRepo.ID),
 		"git", "checkout", pr.BaseBranch)
 	if err != nil {
 		return fmt.Errorf("git checkout: %s", stderr)
@@ -295,12 +296,12 @@ func (pr *PullRequest) testPatch() (err error) {
 
 	pr.Status = PULL_REQUEST_STATUS_CHECKING
 	_, stderr, err = process.ExecDir(-1, pr.BaseRepo.LocalCopyPath(),
-		fmt.Sprintf("testPatch(git apply --check): %d", pr.BaseRepo.ID),
+		fmt.Sprintf("testPatch (git apply --check): %d", pr.BaseRepo.ID),
 		"git", "apply", "--check", patchPath)
 	if err != nil {
 		for i := range patchConflicts {
 			if strings.Contains(stderr, patchConflicts[i]) {
-				log.Trace("PullRequest[%d].testPatch(apply): has conflit", pr.ID)
+				log.Trace("PullRequest[%d].testPatch (apply): has conflit", pr.ID)
 				fmt.Println(stderr)
 				pr.Status = PULL_REQUEST_STATUS_CONFLICT
 				return nil
diff --git a/templates/.VERSION b/templates/.VERSION
index 859d0a2555..9c1b3c01c1 100644
--- a/templates/.VERSION
+++ b/templates/.VERSION
@@ -1 +1 @@
-0.8.27.0202
\ No newline at end of file
+0.8.28.0203
\ No newline at end of file