diff --git a/rhodecode/lib/vcs/backends/git/repository.py b/rhodecode/lib/vcs/backends/git/repository.py --- a/rhodecode/lib/vcs/backends/git/repository.py +++ b/rhodecode/lib/vcs/backends/git/repository.py @@ -66,6 +66,7 @@ class GitRepository(BaseRepository): 'config'), abspath(get_user_home(), '.gitconfig'), ] + self.bare = self._repo.bare @LazyProperty def revisions(self): @@ -226,9 +227,10 @@ class GitRepository(BaseRepository): try: return time.mktime(self.get_changeset().date.timetuple()) except RepositoryError: + idx_loc = '' if self.bare else '.git' # fallback to filesystem - in_path = os.path.join(self.path, '.git', "index") - he_path = os.path.join(self.path, '.git', "HEAD") + in_path = os.path.join(self.path, idx_loc, "index") + he_path = os.path.join(self.path, idx_loc, "HEAD") if os.path.exists(in_path): return os.stat(in_path).st_mtime else: @@ -236,8 +238,9 @@ class GitRepository(BaseRepository): @LazyProperty def description(self): + idx_loc = '' if self.bare else '.git' undefined_description = u'unknown' - description_path = os.path.join(self.path, '.git', 'description') + description_path = os.path.join(self.path, idx_loc, 'description') if os.path.isfile(description_path): return safe_unicode(open(description_path).read()) else: