class Github::Activity::Watching

discussions, as well as events in the user’s activity feed.
Watching a Repository registers the user to receive notificactions on new

def list(*args)


github.activity.watching.list { |watcher| ... }
github.activity.watching.list
github = Github.new :user => 'user-name', :repo => 'repo-name'
= Examples

List repo watchers
def list(*args)
  arguments(args, :required => [:user, :repo])
  response = get_request("/repos/#{user}/#{repo}/subscribers", arguments.params)
  return response unless block_given?
  response.each { |el| yield el }
end

def unwatch(*args)


github.activity.watching.unwatch 'user-name', 'repo-name'
github = Github.new
= Examples
You need to be authenticated to stop watching a repository.

Stop watching a repository
def unwatch(*args)
  arguments(args, :required => [:user, :repo])
  delete_request("/user/subscriptions/#{user}/#{repo}", arguments.params)
end

def watch(*args)


github.activity.watching.watch 'user-name', 'repo-name'
github = Github.new
= Examples

You need to be authenticated to watch a repository

Watch a repository
def watch(*args)
  arguments(args, :required => [:user, :repo])
  put_request("/user/subscriptions/#{user}/#{repo}", arguments.params)
end

def watched(*args)


github.activity.watching.watched
github = Github.new :oauth_token => '...'
= Examples

List repos being watched by the authenticated user

github.activity.watching.watched :user => 'user-name'
github = Github.new
= Examples

List repos being watched by a user
def watched(*args)
  params = arguments(args).params
  response = if (user_name = params.delete('user'))
    get_request("/users/#{user_name}/subscriptions", params)
  else
    get_request("/user/subscriptions", params)
  end
  return response unless block_given?
  response.each { |el| yield el }
end

def watching?(*args)


github.activity.watching.watching? 'user-name', 'repo-name'
github = Github.new
= Examples
Returns true if this repo is watched by you, false otherwise

Check if you are watching a repository
def watching?(*args)
  arguments(args, :required => [:user, :repo])
  get_request("/user/subscriptions/#{user}/#{repo}", arguments.params)
  true
rescue Github::Error::NotFound
  false
end