def update(*args)
      arguments(args, required: [:user, :repo, :ref]) do
        permit VALID_REF_PARAM_NAMES
        assert_required %w[ sha ]
      end

      patch_request("/repos/#{arguments.user}/#{arguments.repo}/git/refs/#{arguments.ref}", arguments.params)
    end
def update(*args)
      arguments(args, required: [:user, :repo, :ref]) do
        permit VALID_REF_PARAM_NAMES
        assert_required %w[ sha ]
      end

      patch_request("/repos/#{arguments.user}/#{arguments.repo}/git/refs/#{arguments.ref}", arguments.params)
    end
Update a reference

 @param [Hash] params
 @input params [String] :sha
   The SHA1 value to set this reference to
 @input params [Boolean] :force
   Indicates whether to force the update or to make sure the update
   is a fast-forward update. Leaving this out or setting it to false
   will make sure you’re not overwriting work. Default: false

 @example
  github = Github.new
  github.git_data.references.update 'user-name', 'repo-name', 'heads/master',
    sha:  "827efc6d56897b048c772eb4087f854f46256132",
    force: true

 @api public