diff --git a/routers/repo/repo.go b/routers/repo/repo.go
index 8884bea3ab..d61917a081 100644
--- a/routers/repo/repo.go
+++ b/routers/repo/repo.go
@@ -181,9 +181,9 @@ func MigratePost(ctx *middleware.Context, form auth.MigrateRepoForm) {
 		}
 	}
 
-	// Remote address can be HTTP/HTTPS URL or local path.
+	// Remote address can be HTTP/HTTPS/Git URL or local path.
 	remoteAddr := form.CloneAddr
-	if strings.HasPrefix(form.CloneAddr, "http") {
+	if strings.HasPrefix(form.CloneAddr, "http://") || strings.HasPrefix(form.CloneAddr, "https://") || strings.HasPrefix(form.CloneAddr, "git://") {
 		u, err := url.Parse(form.CloneAddr)
 		if err != nil {
 			ctx.Data["Err_CloneAddr"] = true