/usr/libexec/git-core
NameSizeModeActions
mergetools/-0755rm
git43973520755editdlrm
git-add43973520755editdlrm
git-am43973520755editdlrm
git-annotate43973520755editdlrm
git-apply43973520755editdlrm
git-archive43973520755editdlrm
git-backfill43973520755editdlrm
git-bisect43973520755editdlrm
git-blame43973520755editdlrm
git-branch43973520755editdlrm
git-bugreport43973520755editdlrm
git-bundle43973520755editdlrm
git-cat-file43973520755editdlrm
git-check-attr43973520755editdlrm
git-check-ignore43973520755editdlrm
git-check-mailmap43973520755editdlrm
git-check-ref-format43973520755editdlrm
git-checkout43973520755editdlrm
git-checkout--worker43973520755editdlrm
git-checkout-index43973520755editdlrm
git-cherry43973520755editdlrm
git-cherry-pick43973520755editdlrm
git-clean43973520755editdlrm
git-clone43973520755editdlrm
git-column43973520755editdlrm
git-commit43973520755editdlrm
git-commit-graph43973520755editdlrm
git-commit-tree43973520755editdlrm
git-config43973520755editdlrm
git-contacts45090755editdlrm
git-count-objects43973520755editdlrm
git-credential43973520755editdlrm
git-credential-cache43973520755editdlrm
git-credential-cache--daemon43973520755editdlrm
git-credential-netrc112460755editdlrm
git-credential-store43973520755editdlrm
git-describe43973520755editdlrm
git-diagnose43973520755editdlrm
git-diff43973520755editdlrm
git-diff-files43973520755editdlrm
git-diff-index43973520755editdlrm
git-diff-pairs43973520755editdlrm
git-diff-tree43973520755editdlrm
git-difftool43973520755editdlrm
git-difftool--helper26640755editdlrm
git-fast-export43973520755editdlrm
git-fast-import43973520755editdlrm
git-fetch43973520755editdlrm
git-fetch-pack43973520755editdlrm
git-filter-branch157950755editdlrm
git-fmt-merge-msg43973520755editdlrm
git-for-each-ref43973520755editdlrm
git-for-each-repo43973520755editdlrm
git-format-patch43973520755editdlrm
git-fsck43973520755editdlrm
git-fsck-objects43973520755editdlrm
git-fsmonitor--daemon43973520755editdlrm
git-gc43973520755editdlrm
git-get-tar-commit-id43973520755editdlrm
git-grep43973520755editdlrm
git-hash-object43973520755editdlrm
git-help43973520755editdlrm
git-hook43973520755editdlrm
git-http-backend8488480755editdlrm
git-http-fetch9332800755editdlrm
git-http-push12950160755editdlrm
git-imap-send9200720755editdlrm
git-index-pack43973520755editdlrm
git-init43973520755editdlrm
git-init-db43973520755editdlrm
git-interpret-trailers43973520755editdlrm
git-last-modified43973520755editdlrm
git-log43973520755editdlrm
git-ls-files43973520755editdlrm
git-ls-remote43973520755editdlrm
git-ls-tree43973520755editdlrm
git-mailinfo43973520755editdlrm
git-mailsplit43973520755editdlrm
git-maintenance43973520755editdlrm
git-merge43973520755editdlrm
git-merge-base43973520755editdlrm
git-merge-file43973520755editdlrm
git-merge-index43973520755editdlrm
git-merge-octopus24810755editdlrm
git-merge-one-file36990755editdlrm
git-merge-ours43973520755editdlrm
git-merge-recursive43973520755editdlrm
git-merge-resolve12300755editdlrm
git-merge-subtree43973520755editdlrm
git-merge-tree43973520755editdlrm
git-mergetool116970755editdlrm
git-mergetool--lib109080644editdlrm
git-mktag43973520755editdlrm
git-mktree43973520755editdlrm
git-multi-pack-index43973520755editdlrm
git-mv43973520755editdlrm
git-name-rev43973520755editdlrm
git-notes43973520755editdlrm
git-pack-objects43973520755editdlrm
git-pack-redundant43973520755editdlrm
git-pack-refs43973520755editdlrm
git-patch-id43973520755editdlrm
git-prune43973520755editdlrm
git-prune-packed43973520755editdlrm
git-pull43973520755editdlrm
git-push43973520755editdlrm
git-quiltimport37000755editdlrm
git-range-diff43973520755editdlrm
git-read-tree43973520755editdlrm
git-rebase43973520755editdlrm
git-receive-pack43973520755editdlrm
git-reflog43973520755editdlrm
git-refs43973520755editdlrm
git-remote43973520755editdlrm
git-remote-ext43973520755editdlrm
git-remote-fd43973520755editdlrm
git-remote-ftp9668400755editdlrm
git-remote-ftps9668400755editdlrm
git-remote-http9668400755editdlrm
git-remote-https9668400755editdlrm
git-repack43973520755editdlrm
git-replace43973520755editdlrm
git-replay43973520755editdlrm
git-repo43973520755editdlrm
git-request-pull39960755editdlrm
git-rerere43973520755editdlrm
git-reset43973520755editdlrm
git-restore43973520755editdlrm
git-rev-list43973520755editdlrm
git-rev-parse43973520755editdlrm
git-revert43973520755editdlrm
git-rm43973520755editdlrm
git-send-pack43973520755editdlrm
git-sh-i18n16830644editdlrm
git-sh-i18n--envsubst8312640755editdlrm
git-sh-setup83980644editdlrm
git-shell8269600755editdlrm
git-shortlog43973520755editdlrm
git-show43973520755editdlrm
git-show-branch43973520755editdlrm
git-show-index43973520755editdlrm
git-show-ref43973520755editdlrm
git-sparse-checkout43973520755editdlrm
git-stage43973520755editdlrm
git-stash43973520755editdlrm
git-status43973520755editdlrm
git-stripspace43973520755editdlrm
git-submodule104970755editdlrm
git-submodule--helper43973520755editdlrm
git-switch43973520755editdlrm
git-symbolic-ref43973520755editdlrm
git-tag43973520755editdlrm
git-unpack-file43973520755editdlrm
git-unpack-objects43973520755editdlrm
git-update-index43973520755editdlrm
git-update-ref43973520755editdlrm
git-update-server-info43973520755editdlrm
git-upload-archive43973520755editdlrm
git-upload-pack43973520755editdlrm
git-var43973520755editdlrm
git-verify-commit43973520755editdlrm
git-verify-pack43973520755editdlrm
git-verify-tag43973520755editdlrm
git-version43973520755editdlrm
git-web--browse44050755editdlrm
git-whatchanged43973520755editdlrm
git-worktree43973520755editdlrm
git-write-tree43973520755editdlrm
scalar8769680755editdlrm
Edit: /usr/libexec/git-core/git-request-pull (3996B)
#!/usr/bin/sh # Copyright 2005, Ryan Anderson # # This file is licensed under the GPL v2, or a later version # at the discretion of Linus Torvalds. SUBDIRECTORY_OK='Yes' OPTIONS_KEEPDASHDASH= OPTIONS_STUCKLONG= OPTIONS_SPEC='git request-pull [options] start url [end] -- p show patch text as well ' . git-sh-setup GIT_PAGER= export GIT_PAGER patch= while case "$#" in 0) break ;; esac do case "$1" in -p) patch=-p ;; --) shift; break ;; -*) usage ;; *) break ;; esac shift done base=$1 url=$2 status=0 test -n "$base" && test -n "$url" || usage baserev=$(git rev-parse --verify --quiet "$base"^0) if test -z "$baserev" then die "fatal: Not a valid revision: $base" fi # # $3 must be a symbolic ref, a unique ref, or # a SHA object expression. It can also be of # the format 'local-name:remote-name'. # local=${3%:*} local=${local:-HEAD} remote=${3#*:} pretty_remote=${remote#refs/} pretty_remote=${pretty_remote#heads/} head=$(git symbolic-ref -q "$local") head=${head:-$(git show-ref --heads --tags "$local" | cut -d' ' -f2)} head=${head:-$(git rev-parse --quiet --verify "$local")} # None of the above? Bad. test -z "$head" && die "fatal: Not a valid revision: $local" # This also verifies that the resulting head is unique: # "git show-ref" could have shown multiple matching refs.. headrev=$(git rev-parse --verify --quiet "$head"^0) test -z "$headrev" && die "fatal: Ambiguous revision: $local" local_sha1=$(git rev-parse --verify --quiet "$head") # Was it a branch with a description? branch_name=${head#refs/heads/} if test "z$branch_name" = "z$headref" || ! git config "branch.$branch_name.description" >/dev/null then branch_name= fi merge_base=$(git merge-base $baserev $headrev) || die "fatal: No commits in common between $base and $head" find_matching_ref () { while read sha1 ref do case "$ref" in *"^"?*) ref="${ref%"^"*}" deref=true ;; *) deref= ;; esac if test "$sha1" = "${remote:-HEAD}" then echo "$sha1 $sha1" break fi case "$ref" in "${remote:-HEAD}"|*"/${remote:-HEAD}") if test -z "$deref" then # Remember the matching unpeeled object on the # remote side. remote_sha1="$sha1" fi if test "$sha1" = "$headrev" then echo "${remote_sha1:-$headrev} $ref" break fi ;; esac done } # Find a ref with the same name as $remote that exists at the remote # and points to the same commit as the local object. set fnord $(git ls-remote "$url" | find_matching_ref) remote_sha1=$2 ref=$3 if test -z "$ref" then echo "warn: No match for commit $headrev found at $url" >&2 echo "warn: Are you sure you pushed '${remote:-HEAD}' there?" >&2 status=1 elif test "$local_sha1" != "$remote_sha1" then echo "warn: $head found at $url but points to a different object" >&2 echo "warn: Are you sure you pushed '${remote:-HEAD}' there?" >&2 status=1 fi # Special case: turn "for_linus" to "tags/for_linus" when it is correct if test "$ref" = "refs/tags/$pretty_remote" then pretty_remote=tags/$pretty_remote fi url=$(git ls-remote --get-url "$url") git show -s --format='The following changes since commit %H: %s (%ci) are available in the Git repository at: ' $merge_base && echo " $url $pretty_remote" && git show -s --format=' for you to fetch changes up to %H: %s (%ci) ----------------------------------------------------------------' $headrev && if test $(git cat-file -t "$head") = tag then git cat-file tag "$head" | sed -n -e '1,/^$/d' -e '/^-----BEGIN \(PGP\|SSH\|SIGNED\) /q' -e p echo echo "----------------------------------------------------------------" fi && if test -n "$branch_name" then echo "(from the branch description for $branch_name local branch)" echo git config "branch.$branch_name.description" echo "----------------------------------------------------------------" fi && git shortlog ^$baserev $headrev && git diff -M --stat --summary $patch $merge_base..$headrev || status=1 exit $status