diff --git a/.rubocop.yml b/.rubocop.yml
index 8f54d5d3765caa3f0c228f49f9a29890db41e228..807527e8d4b74b684672e012d495f0bb0029548a 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -267,7 +267,7 @@ Style/HashSyntax:
                  Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax
                  { :a => 1, :b => 2 }.
   StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-literals'
-  Enabled: false
+  Enabled: true
 
 Style/IfUnlessModifier:
   Description: >-
@@ -817,10 +817,6 @@ Lint/DeprecatedClassMethods:
   Description: 'Check for deprecated class method calls.'
   Enabled: false
 
-Lint/DuplicateMethods:
-  Description: 'Check for duplicate methods calls.'
-  Enabled: false
-
 Lint/ElseLayout:
   Description: 'Check for odd code arrangement in an else block.'
   Enabled: false
diff --git a/app/controllers/github_imports_controller.rb b/app/controllers/github_imports_controller.rb
index 3c5448bc709b1a220d572bf381126db6c2a82fa6..b73e3f7ffac44f3ad16d5a39849735fef702f209 100644
--- a/app/controllers/github_imports_controller.rb
+++ b/app/controllers/github_imports_controller.rb
@@ -23,7 +23,7 @@ class GithubImportsController < ApplicationController
   end
 
   def jobs
-    jobs = current_user.created_projects.where(import_type: "github").to_json(:only => [:id, :import_status])
+    jobs = current_user.created_projects.where(import_type: "github").to_json(only: [:id, :import_status])
     render json: jobs
   end
 
@@ -58,7 +58,7 @@ class GithubImportsController < ApplicationController
 
   def octo_client
     Octokit.auto_paginate = true
-    @octo_client ||= Octokit::Client.new(:access_token => current_user.github_access_token)
+    @octo_client ||= Octokit::Client.new(access_token: current_user.github_access_token)
   end
 
   def github_auth
diff --git a/app/helpers/emails_helper.rb b/app/helpers/emails_helper.rb
index b336263049cee01e88520d45f8971f2bfa4e4f78..92cc9c426b89177dba22bdd3b6d81705894cd7bb 100644
--- a/app/helpers/emails_helper.rb
+++ b/app/helpers/emails_helper.rb
@@ -31,7 +31,7 @@ module EmailsHelper
   end
 
   def add_email_highlight_css
-    Rugments::Themes::Github.render(:scope => '.highlight')
+    Rugments::Themes::Github.render(scope: '.highlight')
   end
 
   def color_email_diff(diffcontent)
diff --git a/app/helpers/merge_requests_helper.rb b/app/helpers/merge_requests_helper.rb
index fe6fd5832fc0c4d041f617b86801f8c1d4cb7793..2c9aeba570ab69b4a1361a87b48ccb56d482cf21 100644
--- a/app/helpers/merge_requests_helper.rb
+++ b/app/helpers/merge_requests_helper.rb
@@ -15,7 +15,7 @@ module MergeRequestsHelper
   end
 
   def new_mr_from_push_event(event, target_project)
-    return :merge_request => {
+    return merge_request: {
       source_project_id: event.project.id,
       target_project_id: target_project.id,
       source_branch: event.branch_name,
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb
index 715257f905ffbf2b9077f60f31699c2fd2bcb38c..ad2e8d7879bc64e1fbed2bfc0d909a13d79616b1 100644
--- a/app/models/merge_request.rb
+++ b/app/models/merge_request.rb
@@ -76,7 +76,7 @@ class MergeRequest < ActiveRecord::Base
       merge_request.save
     end
 
-    after_transition :locked => (any - :locked) do |merge_request, transition|
+    after_transition locked: (any - :locked) do |merge_request, transition|
       merge_request.locked_at = nil
       merge_request.save
     end
diff --git a/app/models/project.rb b/app/models/project.rb
index f3dddc28adb01809922177abfcb6cfd909186791..f314ed9bd2582975cb1e92a308ed8fdfe8af6e98 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -156,22 +156,22 @@ class Project < ActiveRecord::Base
     end
 
     event :import_finish do
-      transition :started => :finished
+      transition started: :finished
     end
 
     event :import_fail do
-      transition :started => :failed
+      transition started: :failed
     end
 
     event :import_retry do
-      transition :failed => :started
+      transition failed: :started
     end
 
     state :started
     state :finished
     state :failed
 
-    after_transition any => :started, :do => :add_import_job
+    after_transition any => :started, do: :add_import_job
   end
 
   class << self
diff --git a/config/initializers/carrierwave.rb b/config/initializers/carrierwave.rb
index d0065b63e545ead2c3cf7d762b673f5ce495471a..10dfc30a0c5040ad2d00143ee410ee61ee87b2d6 100644
--- a/config/initializers/carrierwave.rb
+++ b/config/initializers/carrierwave.rb
@@ -23,11 +23,11 @@ if File.exists?(aws_file)
   if Rails.env.test?
     Fog.mock!
     connection = ::Fog::Storage.new(
-        :aws_access_key_id      => AWS_CONFIG['access_key_id'],
-        :aws_secret_access_key  => AWS_CONFIG['secret_access_key'],
-        :provider               => 'AWS',
-        :region                 => AWS_CONFIG['region']
+        aws_access_key_id: AWS_CONFIG['access_key_id'],
+        aws_secret_access_key: AWS_CONFIG['secret_access_key'],
+        provider: 'AWS',
+        region: AWS_CONFIG['region']
       )
-    connection.directories.create(:key => AWS_CONFIG['bucket'])
+    connection.directories.create(key: AWS_CONFIG['bucket'])
   end
 end
diff --git a/config/initializers/doorkeeper.rb b/config/initializers/doorkeeper.rb
index 4819ab273dce27e2568a634d19a6acbc3fbe1dec..e9b843e29b4b2e44544a3012b3efa497c2f204f2 100644
--- a/config/initializers/doorkeeper.rb
+++ b/config/initializers/doorkeeper.rb
@@ -43,10 +43,10 @@ Doorkeeper.configure do
   force_ssl_in_redirect_uri false
 
   # Provide support for an owner to be assigned to each registered application (disabled by default)
-  # Optional parameter :confirmation => true (default false) if you want to enforce ownership of
+  # Optional parameter confirmation: true (default false) if you want to enforce ownership of
   # a registered application
   # Note: you must also run the rails g doorkeeper:application_owner generator to provide the necessary support
-  enable_application_owner :confirmation => false
+  enable_application_owner confirmation: false
 
   # Define access token scopes for your provider
   # For more information go to
diff --git a/config/routes.rb b/config/routes.rb
index e122777314ac8e1e46951a35714e5d6c12f4ec14..30df1ba0dfeb55e25961f4c7f1521a77c4b8a6dc 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -3,9 +3,9 @@ require 'api/api'
 
 Gitlab::Application.routes.draw do
   use_doorkeeper do
-    controllers :applications => 'oauth/applications',
-                :authorized_applications => 'oauth/authorized_applications',
-                :authorizations => 'oauth/authorizations'
+    controllers applications: 'oauth/applications',
+                authorized_applications: 'oauth/authorized_applications',
+                authorizations: 'oauth/authorizations'
   end
   #
   # Search
diff --git a/lib/api/api_guard.rb b/lib/api/api_guard.rb
index 23975518181cf4bc538d15840c16d8555fcf9cc1..28765b142f6a8d234970fe808a79ee2d9a60009e 100644
--- a/lib/api/api_guard.rb
+++ b/lib/api/api_guard.rb
@@ -146,7 +146,7 @@ module APIGuard
             Rack::OAuth2::Server::Resource::Bearer::Forbidden.new(
               :insufficient_scope,
               Rack::OAuth2::Server::Resource::ErrorMethods::DEFAULT_DESCRIPTION[:insufficient_scope],
-              { :scope => e.scopes})
+              { scope: e.scopes})
           end
 
         response.finish
@@ -172,4 +172,4 @@ module APIGuard
       @scopes = scopes
     end
   end
-end
\ No newline at end of file
+end
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index ac166ed4fbafb81b90b2bc2056914607597307ae..58339908fd2bdc08feaaca671315c5c19018bb1d 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -55,7 +55,7 @@ module API
       expose :path, :path_with_namespace
       expose :issues_enabled, :merge_requests_enabled, :wiki_enabled, :snippets_enabled, :created_at, :last_activity_at
       expose :namespace
-      expose :forked_from_project, using: Entities::ForkedFromProject, :if => lambda{ | project, options | project.forked? }
+      expose :forked_from_project, using: Entities::ForkedFromProject, if: lambda{ | project, options | project.forked? }
     end
 
     class ProjectMember < UserBasic
diff --git a/lib/gitlab/github/importer.rb b/lib/gitlab/github/importer.rb
index c72a1c25e9e49e7eb8e192d155a37aab5d6eddf0..9f0fc6c4471d4474b5f0ef82a371c017d0a4f153 100644
--- a/lib/gitlab/github/importer.rb
+++ b/lib/gitlab/github/importer.rb
@@ -9,12 +9,12 @@ module Gitlab
 
       def execute
         client = octo_client(project.creator.github_access_token)
-       
+
         #Issues && Comments
         client.list_issues(project.import_source, state: :all).each do |issue|
           if issue.pull_request.nil?
             body = "*Created by: #{issue.user.login}*\n\n#{issue.body}"
-            
+
             if issue.comments > 0
               body += "\n\n\n**Imported comments:**\n"
               client.issue_comments(project.import_source, issue.number).each do |c|
@@ -23,7 +23,7 @@ module Gitlab
             end
 
             project.issues.create!(
-              description: body, 
+              description: body,
               title: issue.title,
               state: issue.state == 'closed' ? 'closed' : 'opened',
               author_id: gl_user_id(project, issue.user.id)
@@ -36,7 +36,7 @@ module Gitlab
 
       def octo_client(access_token)
         ::Octokit.auto_paginate = true
-        ::Octokit::Client.new(:access_token => access_token)
+        ::Octokit::Client.new(access_token: access_token)
       end
 
       def gl_user_id(project, github_id)