def GetMetaDataForList(commit_range, git_dir=None, count=None, series=None, allow_overwrite=False): """Reads out patch series metadata from the commits This does a 'git log' on the relevant commits and pulls out the tags we are interested in. Args: commit_range: Range of commits to count (e.g. 'HEAD..base') git_dir: Path to git repositiory (None to use default) count: Number of commits to list, or None for no limit series: Series object to add information into. By default a new series is started. allow_overwrite: Allow tags to overwrite an existing tag Returns: A Series object containing information about the commits. """ if not series: series = Series() series.allow_overwrite = allow_overwrite params = gitutil.LogCmd(commit_range, reverse=True, count=count, git_dir=git_dir) stdout = command.RunPipe([params], capture=True).stdout ps = PatchStream(series, is_log=True) for line in stdout.splitlines(): ps.ProcessLine(line) ps.Finalize() return series
def get_list(commit_range, git_dir=None, count=None): """Get a log of a list of comments This returns the output of 'git log' for the selected commits Args: commit_range (str): Range of commits to count (e.g. 'HEAD..base') git_dir (str): Path to git repositiory (None to use default) count (int): Number of commits to list, or None for no limit Returns str: String containing the contents of the git log """ params = gitutil.LogCmd(commit_range, reverse=True, count=count, git_dir=git_dir) return command.RunPipe([params], capture=True).stdout