36 lines · 1.4 KB · Text
RawDownload
#!/bin/sh# SPDX-License-Identifier: GPL-2.0-only diff_patch=$1 mkdir -p "$(dirname "${diff_patch}")" git -C "${srctree:-.}" diff HEAD > "${diff_patch}" if [ ! -s "${diff_patch}" ] ||   [ -z "$(git -C "${srctree:-.}" ls-files --other --exclude-standard | head -n1)" ]; then	exitfi # The source tarball, which is generated by 'git archive', contains everything# you committed in the repository. If you have local diff ('git diff HEAD'),# it will go into ${diff_patch}. If untracked files are remaining, the resulting# source package may not be correct.## Examples:#  - You modified a source file to add #include "new-header.h"#    but forgot to add new-header.h#  - You modified a Makefile to add 'obj-$(CONFIG_FOO) += new-dirver.o'#    but you forgot to add new-driver.c## You need to commit them, or at least stage them by 'git add'.## This script does not take care of untracked files because doing so would# introduce additional complexity. Instead, print a warning message here if# untracked files are found.# If all untracked files are just garbage, you can ignore this warning.echo >&2 "============================ WARNING ============================"echo >&2 "Your working tree has diff from HEAD, and also untracked file(s)."echo >&2 "Please make sure you did 'git add' for all new files you need in"echo >&2 "the source package."echo >&2 "================================================================="