diff options
Diffstat (limited to 'gbp')
-rw-r--r-- | gbp/deb/git.py | 4 | ||||
-rw-r--r-- | gbp/scripts/dch.py | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/gbp/deb/git.py b/gbp/deb/git.py index 23d3ee7e..f4c7eaf4 100644 --- a/gbp/deb/git.py +++ b/gbp/deb/git.py @@ -32,8 +32,8 @@ class DebianGitRepository(GitRepository): '%(?P<R>([^%]|\\%))+' '\)s') - def __init__(self, path): - super(DebianGitRepository, self).__init__(path) + def __init__(self, *args, **kwargs): + super(DebianGitRepository, self).__init__(*args, **kwargs) self.pristine_tar = DebianPristineTar(self) def tree_drop_dirs(self, tree, dirs): diff --git a/gbp/scripts/dch.py b/gbp/scripts/dch.py index 59e920b1..18e86de7 100644 --- a/gbp/scripts/dch.py +++ b/gbp/scripts/dch.py @@ -423,8 +423,10 @@ def main(argv): return ExitCodes.parse_error try: + old_cwd = os.path.abspath(os.path.curdir) try: - repo = DebianGitRepository('.') + repo = DebianGitRepository('.', toplevel=False) + os.chdir(repo.path) except GitRepositoryError: raise GbpError("%s is not a git repository" % (os.path.abspath('.'))) @@ -566,6 +568,8 @@ def main(argv): if str(err): gbp.log.err(err) ret = 1 + finally: + os.chdir(old_cwd) return ret |