Mercurial > kallithea
changeset 2383:e576410f911d beta
Don't do git pull on remote repos since they are bare now, we need to use git fetch on them
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Mon, 04 Jun 2012 03:55:28 +0200 |
parents | 034e4fe1ebb2 |
children | 5563af834d92 |
files | rhodecode/lib/vcs/backends/git/repository.py rhodecode/model/scm.py |
diffstat | 2 files changed, 15 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/lib/vcs/backends/git/repository.py Mon Jun 04 02:56:09 2012 +0200 +++ b/rhodecode/lib/vcs/backends/git/repository.py Mon Jun 04 03:55:28 2012 +0200 @@ -500,6 +500,17 @@ # If error occurs run_git_command raises RepositoryError already self.run_git_command(cmd) + def fetch(self, url): + """ + Tries to pull changes from external location. + """ + url = self._get_url(url) + cmd = ['fetch'] + cmd.append(url) + cmd = ' '.join(cmd) + # If error occurs run_git_command raises RepositoryError already + self.run_git_command(cmd) + @LazyProperty def workdir(self): """
--- a/rhodecode/model/scm.py Mon Jun 04 02:56:09 2012 +0200 +++ b/rhodecode/model/scm.py Mon Jun 04 03:55:28 2012 +0200 @@ -360,8 +360,10 @@ # inject ui extra param to log this action via push logger for k, v in extras.items(): repo._repo.ui.setconfig('rhodecode_extras', k, v) - - repo.pull(clone_uri) + if repo.alias == 'git': + repo.fetch(clone_uri) + else: + repo.pull(clone_uri) self.mark_for_invalidation(repo_name) except: log.error(traceback.format_exc())