def __git_commit(self, author, timestamp, sync=False): """Commits translation to git.""" # Format commit message msg = self.get_commit_message() # Pre commit hook vcs_pre_commit.send(sender=self.__class__, translation=self) # Create list of files to commit files = [self.filename] if self.subproject.extra_commit_file: extra_files = self.subproject.extra_commit_file % { 'language': self.language_code, } for extra_file in extra_files.split('\n'): full_path_extra = os.path.join( self.subproject.get_path(), extra_file ) if os.path.exists(full_path_extra): files.append(extra_file) # Do actual commit self.subproject.repository.commit( msg, author, timestamp, files ) # Post commit hook vcs_post_commit.send(sender=self.__class__, translation=self) # Optionally store updated hash if sync: self.store_hash()
def __git_commit(self, author, timestamp): """Commit translation to git.""" # Format commit message msg = self.get_commit_message(author) # Pre commit hook vcs_pre_commit.send( sender=self.__class__, translation=self, author=author ) # Create list of files to commit files = self.filenames # Do actual commit self.component.repository.commit( msg, author, timestamp, files + self.addon_commit_files ) self.addon_commit_files = [] # Post commit hook vcs_post_commit.send(sender=self.__class__, translation=self) # Store updated hash self.store_hash()
def git_commit( self, user, author: str, timestamp: Optional[datetime] = None, skip_push=False, signals=True, template: Optional[str] = None, store_hash: bool = True, ): """Wrapper for committing translation to git.""" repository = self.component.repository if template is None: template = self.component.commit_message with repository.lock: # Pre commit hook vcs_pre_commit.send(sender=self.__class__, translation=self, author=author) # Do actual commit with git lock if not self.component.commit_files( template=template, author=author, timestamp=timestamp, skip_push=skip_push, signals=signals, files=self.filenames + self.addon_commit_files, extra_context={"translation": self}, ): self.log_info("committed %s as %s", self.filenames, author) Change.objects.create(action=Change.ACTION_COMMIT, translation=self, user=user) # Store updated hash if store_hash: self.store_hash() self.addon_commit_files = [] return True
def __git_commit(self, author, timestamp): """Commit translation to git.""" # Format commit message msg = self.get_commit_message(author) # Pre commit hook vcs_pre_commit.send(sender=self.__class__, translation=self, author=author) # Create list of files to commit files = [self.filename] # Do actual commit self.component.repository.commit(msg, author, timestamp, files + self.addon_commit_files) self.addon_commit_files = [] # Post commit hook vcs_post_commit.send(sender=self.__class__, translation=self) # Store updated hash self.store_hash()
def __git_commit(self, author, timestamp, sync=False): ''' Commits translation to git. ''' # Format commit message msg = self.get_commit_message() # Pre commit hook vcs_pre_commit.send(sender=self.__class__, translation=self) # Create list of files to commit files = [self.filename] if self.subproject.extra_commit_file: extra_files = self.subproject.extra_commit_file % { 'language': self.language_code, } for extra_file in extra_files.split('\n'): full_path_extra = os.path.join( self.subproject.get_path(), extra_file ) if os.path.exists(full_path_extra): files.append(extra_file) # Do actual commit self.repository.commit( msg, author, timestamp, files ) # Post commit hook vcs_post_commit.send(sender=self.__class__, translation=self) # Optionally store updated hash if sync: self.store_hash()