Revision 58696bfcaacc50323e596112124b41242fde23de authored by Junio C Hamano on 08 July 2024, 22:52:11 UTC, committed by Junio C Hamano on 08 July 2024, 23:23:05 UTC
Under ci/ hierarchy, we run scripts under either "sh" (any Bourne
compatible POSIX shell would work) or specifically "bash" (as they
require features from bash, e.g., ${parameter/pattern/string}
expansion).  As we have the CI environment under our control, we can
expect that /bin/sh will always be fine to run the scripts that only
require a Bourne shell, but we may not know where "bash" is
installed depending on the distro used.

So let's make sure we start these scripts with either one of these:

	#!/bin/sh
	#!/usr/bin/env bash

Yes, the latter has to assume that everybody installs "env" at that
path and not as /bin/env or /usr/local/bin/env, but this currently
is the best we could do.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 337b4d4
Raw File
shortlog.h
#ifndef SHORTLOG_H
#define SHORTLOG_H

#include "string-list.h"
#include "date.h"

struct commit;

struct shortlog {
	struct string_list list;
	int summary;
	int wrap_lines;
	int sort_by_number;
	int wrap;
	int in1;
	int in2;
	int user_format;
	int abbrev;
	struct date_mode date_mode;

	enum {
		SHORTLOG_GROUP_AUTHOR = (1 << 0),
		SHORTLOG_GROUP_COMMITTER = (1 << 1),
		SHORTLOG_GROUP_TRAILER = (1 << 2),
		SHORTLOG_GROUP_FORMAT = (1 << 3),
	} groups;
	struct string_list trailers;
	struct string_list format;

	int email;
	struct string_list mailmap;
	FILE *file;
};

void shortlog_init(struct shortlog *log);
void shortlog_finish_setup(struct shortlog *log);

void shortlog_add_commit(struct shortlog *log, struct commit *commit);

void shortlog_output(struct shortlog *log);

#endif
back to top