diff --git a/db/migrate/20160302152808_remove_wrong_import_url_from_projects.rb b/db/migrate/20160302152808_remove_wrong_import_url_from_projects.rb
index dda7648fb87c11151167ce02bd81d3c96aa44a01..dfa9f2d4dee08b82513303c5d0c0c4799668cf5a 100644
--- a/db/migrate/20160302152808_remove_wrong_import_url_from_projects.rb
+++ b/db/migrate/20160302152808_remove_wrong_import_url_from_projects.rb
@@ -23,11 +23,16 @@ class RemoveWrongImportUrlFromProjects < ActiveRecord::Migration
   end
 
   def up
-    projects_with_wrong_import_url.each do |project|
-      sanitizer = ImportUrlSanitizer.new(project.import_urls)
-      project.update_columns(import_url: sanitizer.sanitized_url)
-      if project.import_data
-        project.import_data.update_columns(credentials: sanitizer.credentials)
+    projects_with_wrong_import_url.each do |project_id|
+      project = Project.find(project_id["id"])
+      sanitizer = ImportUrlSanitizer.new(project.import_url)
+
+      ActiveRecord::Base.transaction do
+        project.update_columns(import_url: sanitizer.sanitized_url)
+        if project.import_data
+          project.import_data.credentials = sanitizer.credentials
+          project.save!
+        end
       end
     end
   end
diff --git a/db/schema.rb b/db/schema.rb
index 53a941d30de1843d0e7bdcde18b956d1041bac8f..05c19fc7a2e380148428f6e63b0f07bbf339c3c4 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
 #
 # It's strongly recommended that you check this file into your version control system.
 
-ActiveRecord::Schema.define(version: 20160222153918) do
+ActiveRecord::Schema.define(version: 20160302152808) do
 
   # These are extensions that must be enabled in order to support this database
   enable_extension "plpgsql"
@@ -658,6 +658,8 @@ ActiveRecord::Schema.define(version: 20160222153918) do
   create_table "project_import_data", force: :cascade do |t|
     t.integer "project_id"
     t.text    "data"
+    t.text    "encrypted_credentials"
+    t.text    "encrypted_credentials_iv"
   end
 
   create_table "projects", force: :cascade do |t|
diff --git a/lib/gitlab/github_import/project_creator.rb b/lib/gitlab/github_import/project_creator.rb
index 474927069a50878ae21ddc7519bc0f4a4438bca9..d6cab3c2d24d3e37d6038439efe887410556b1d5 100644
--- a/lib/gitlab/github_import/project_creator.rb
+++ b/lib/gitlab/github_import/project_creator.rb
@@ -20,13 +20,21 @@ module Gitlab
           visibility_level: repo.private ? Gitlab::VisibilityLevel::PRIVATE : Gitlab::VisibilityLevel::PUBLIC,
           import_type: "github",
           import_source: repo.full_name,
-          import_url: repo.clone_url.sub("https://", "https://#{@session_data[:github_access_token]}@"),
+          import_url: repo.clone_url,
           wiki_enabled: !repo.has_wiki? # If repo has wiki we'll import it later
         ).execute
 
-        project.create_import_data(data: { "github_session" => session_data } )
+        create_import_data(project)
         project
       end
+
+      private
+
+      def create_import_data(project)
+        project.create_import_data(
+          credentials: session_data.delete(:github_access_token),
+          data: { "github_session" => session_data })
+      end
     end
   end
 end
diff --git a/spec/lib/gitlab/github_import/project_creator_spec.rb b/spec/lib/gitlab/github_import/project_creator_spec.rb
index c93a3ebdaeccef652ade6ce67732b54893c38e5d..36abe87f527ddb2990878138d9a20043ac86512f 100644
--- a/spec/lib/gitlab/github_import/project_creator_spec.rb
+++ b/spec/lib/gitlab/github_import/project_creator_spec.rb
@@ -26,7 +26,8 @@ describe Gitlab::GithubImport::ProjectCreator, lib: true do
     project_creator = Gitlab::GithubImport::ProjectCreator.new(repo, namespace, user, access_params)
     project = project_creator.execute
 
-    expect(project.import_url).to eq("https://asdffg@gitlab.com/asd/vim.git")
+    expect(project.import_url).to eq("https://gitlab.com/asd/vim.git")
+    expect(project.import_data.credentials).to eq("asdffg")
     expect(project.visibility_level).to eq(Gitlab::VisibilityLevel::PRIVATE)
   end
 end