diff --git a/models/migrations/migrations.go b/models/migrations/migrations.go
index 62fadf5f3..5326022b4 100644
--- a/models/migrations/migrations.go
+++ b/models/migrations/migrations.go
@@ -234,6 +234,8 @@ var migrations = []Migration{
 	NewMigration("add commit status context field to commit_status", addCommitStatusContext),
 	// v89 -> v90
 	NewMigration("add original author/url migration info to issues, comments, and repo ", addOriginalMigrationInfo),
+	// v90 -> v91
+	NewMigration("change length of some repository columns", changeSomeColumnsLengthOfRepo),
 }
 
 // Migrate database to current version
diff --git a/models/migrations/v90.go b/models/migrations/v90.go
new file mode 100644
index 000000000..09aceae2f
--- /dev/null
+++ b/models/migrations/v90.go
@@ -0,0 +1,18 @@
+// Copyright 2019 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package migrations
+
+import "github.com/go-xorm/xorm"
+
+func changeSomeColumnsLengthOfRepo(x *xorm.Engine) error {
+	type Repository struct {
+		ID          int64  `xorm:"pk autoincr"`
+		Description string `xorm:"TEXT"`
+		Website     string `xorm:"VARCHAR(2048)"`
+		OriginalURL string `xorm:"VARCHAR(2048)"`
+	}
+
+	return x.Sync2(new(Repository))
+}
diff --git a/models/repo.go b/models/repo.go
index ba1415539..501a2c912 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -134,9 +134,9 @@ type Repository struct {
 	Owner         *User  `xorm:"-"`
 	LowerName     string `xorm:"UNIQUE(s) INDEX NOT NULL"`
 	Name          string `xorm:"INDEX NOT NULL"`
-	Description   string
-	Website       string
-	OriginalURL   string
+	Description   string `xorm:"TEXT"`
+	Website       string `xorm:"VARCHAR(2048)"`
+	OriginalURL   string `xorm:"VARCHAR(2048)"`
 	DefaultBranch string
 
 	NumWatches          int