def run(self, edit, stage="file"):
        repo = self.get_repo()
        if not repo:
            return

        goto = None
        if stage == "all":
            self.add_all(repo)
        elif stage < "unstaged":
            self.add_all_unstaged(repo)
        elif stage == "section":
            points = self.get_all_points()
            sections = set([self.section_at_point(p) for p in points])
            if UNTRACKED_FILES in sections and UNSTAGED_CHANGES in sections:
                self.add_all(repo)
            elif UNSTAGED_CHANGES in sections:
                self.add_all_unstaged(repo)
            elif UNTRACKED_FILES in sections:
                self.add_all_untracked(repo)
        elif stage == "file":
            files = self.get_selected_files()
            untracked = [f for s, f in files if s in (UNTRACKED_FILES,)]
            unstaged = [f for s, f in files if s in (UNSTAGED_CHANGES,)]
            if untracked:
                self.add(repo, untracked)
            if unstaged:
                self.add_update(repo, unstaged)
            goto = self.logical_goto_next_file()

        self.update_status(goto)
dataset/ETHPy150Open SublimeGit/SublimeGit/sgit/status.py/GitStatusStageCommand.run/operator `==` -> `<`