                 return onceAll(promises)
 
             return onceAll(commitsPromises).then () => @lastSeenSha = lastSeenSha
+
+      return @_runningPromise.then () =>
+        @_runningPromise = false
+        setTimeout (() => @pollUpdates()), UPDATE_TIMEOUT if @keepUpdating
+

                  filePath = file.filename
                  model = allContent.get(filePath)

                  if model
                    # TODO: Just invalidate the model by clearing `isLoaded`
                    return model.reload().then () =>
                      attributes =

    # This is updated every time the Remote Updater fetches
    lastSeenSha: null

    initialize: () ->
      # If the session config changes then clear the lastSeenSha because it may point to a different repo
      session.on 'change', () =>
        @lastSeenSha = null

    start: () ->
      # Get the current repo and last commit
      # Periodically check the commits list
