mirror of
https://github.com/git/git
synced 2024-08-28 12:09:19 +00:00
Merge branch 'ah/filter-branch-setup'
"filter-branch" learned a pseudo filter "--setup" that can be used to define a common function/variable that can be used by other filters. * ah/filter-branch-setup: filter-branch: add [--] to usage filter-branch: add `--setup` step
This commit is contained in:
commit
5779a4aa0e
|
@ -8,11 +8,11 @@ git-filter-branch - Rewrite branches
|
|||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git filter-branch' [--env-filter <command>] [--tree-filter <command>]
|
||||
[--index-filter <command>] [--parent-filter <command>]
|
||||
[--msg-filter <command>] [--commit-filter <command>]
|
||||
[--tag-name-filter <command>] [--subdirectory-filter <directory>]
|
||||
[--prune-empty]
|
||||
'git filter-branch' [--setup <command>] [--env-filter <command>]
|
||||
[--tree-filter <command>] [--index-filter <command>]
|
||||
[--parent-filter <command>] [--msg-filter <command>]
|
||||
[--commit-filter <command>] [--tag-name-filter <command>]
|
||||
[--subdirectory-filter <directory>] [--prune-empty]
|
||||
[--original <namespace>] [-d <directory>] [-f | --force]
|
||||
[--] [<rev-list options>...]
|
||||
|
||||
|
@ -82,6 +82,13 @@ multiple commits.
|
|||
OPTIONS
|
||||
-------
|
||||
|
||||
--setup <command>::
|
||||
This is not a real filter executed for each commit but a one
|
||||
time setup just before the loop. Therefore no commit-specific
|
||||
variables are defined yet. Functions or variables defined here
|
||||
can be used or modified in the following filter steps except
|
||||
the commit filter, for technical reasons.
|
||||
|
||||
--env-filter <command>::
|
||||
This filter may be used if you only need to modify the environment
|
||||
in which the commit will be performed. Specifically, you might
|
||||
|
|
|
@ -81,12 +81,13 @@ set_ident () {
|
|||
finish_ident COMMITTER
|
||||
}
|
||||
|
||||
USAGE="[--env-filter <command>] [--tree-filter <command>]
|
||||
[--index-filter <command>] [--parent-filter <command>]
|
||||
[--msg-filter <command>] [--commit-filter <command>]
|
||||
[--tag-name-filter <command>] [--subdirectory-filter <directory>]
|
||||
[--original <namespace>] [-d <directory>] [-f | --force]
|
||||
[<rev-list options>...]"
|
||||
USAGE="[--setup <command>] [--env-filter <command>]
|
||||
[--tree-filter <command>] [--index-filter <command>]
|
||||
[--parent-filter <command>] [--msg-filter <command>]
|
||||
[--commit-filter <command>] [--tag-name-filter <command>]
|
||||
[--subdirectory-filter <directory>] [--original <namespace>]
|
||||
[-d <directory>] [-f | --force]
|
||||
[--] [<rev-list options>...]"
|
||||
|
||||
OPTIONS_SPEC=
|
||||
. git-sh-setup
|
||||
|
@ -96,6 +97,7 @@ if [ "$(is_bare_repository)" = false ]; then
|
|||
fi
|
||||
|
||||
tempdir=.git-rewrite
|
||||
filter_setup=
|
||||
filter_env=
|
||||
filter_tree=
|
||||
filter_index=
|
||||
|
@ -148,6 +150,9 @@ do
|
|||
-d)
|
||||
tempdir="$OPTARG"
|
||||
;;
|
||||
--setup)
|
||||
filter_setup="$OPTARG"
|
||||
;;
|
||||
--env-filter)
|
||||
filter_env="$OPTARG"
|
||||
;;
|
||||
|
@ -317,6 +322,9 @@ else
|
|||
need_index=
|
||||
fi
|
||||
|
||||
eval "$filter_setup" < /dev/null ||
|
||||
die "filter setup failed: $filter_setup"
|
||||
|
||||
while read commit parents; do
|
||||
git_filter_branch__commit_count=$(($git_filter_branch__commit_count+1))
|
||||
|
||||
|
|
Loading…
Reference in a new issue