   ### Internal ###
 
   refreshStatus: ->
-    @task.start @getPath(), ({statuses, upstream}) =>
+    @statusTask = Task.once 'repository-status-handler', @getPath(), ({statuses, upstream}) =>
       statusesUnchanged = _.isEqual(statuses, @statuses) and _.isEqual(upstream, @upstream)
       @statuses = statuses
       @upstream = upstream


    @statuses = {}
    @upstream = {ahead: 0, behind: 0}
    @task = new Task('repository-status-handler')

    refreshOnWindowFocus = options.refreshOnWindowFocus ? true
    if refreshOnWindowFocus

  statuses: null
  upstream: null
  statusTask: null

  ### Internal ###

