diff --git a/osc/commandline.py b/osc/commandline.py index 783726c9..de372871 100644 --- a/osc/commandline.py +++ b/osc/commandline.py @@ -5415,7 +5415,8 @@ Please submit there instead, or use --nodevelproject to force direct submission. p = Package('.') # check if everything is committed for filename in p.filenamelist: - if p.status(filename) != ' ': + state = p.status(filename) + if state != ' ' and state != 'S': raise oscerr.WrongArgs('Please commit your local changes first!') # check if we need to update upstream_rev = p.latest_rev() diff --git a/osc/core.py b/osc/core.py index 75cfee79..53cd6440 100644 --- a/osc/core.py +++ b/osc/core.py @@ -1239,7 +1239,7 @@ class Package: exists_in_store = True - if n in self.skipped: + if n in self.skipped or n.startswith('_service:'): state = 'S' elif exists and not exists_in_store and known_by_meta: state = 'D' @@ -4838,6 +4838,8 @@ def getStatus(pacs, prj_obj=None, verbose=False, quiet=False): lines.append(statfrmt(state, os.path.normpath(os.path.join(prj_obj.dir, p.name)))) for filename in p.todo: + if filename.startswith('_service:'): + continue if filename in p.excluded: continue if filename in p.skipped: