git-commit-vandalism/builtin
Jacob Keller 14111fc492 git: submodule honor -c credential.* from command line
Due to the way that the git-submodule code works, it clears all local
git environment variables before entering submodules. This is normally
a good thing since we want to clear settings such as GIT_WORKTREE and
other variables which would affect the operation of submodule commands.
However, GIT_CONFIG_PARAMETERS is special, and we actually do want to
preserve these settings. However, we do not want to preserve all
configuration as many things should be left specific to the parent
project.

Add a git submodule--helper function, sanitize-config, which shall be
used to sanitize GIT_CONFIG_PARAMETERS, removing all key/value pairs
except a small subset that are known to be safe and necessary.

Replace all the calls to clear_local_git_env with a wrapped function
that filters GIT_CONFIG_PARAMETERS using the new helper and then
restores it to the filtered subset after clearing the rest of the
environment.

Signed-off-by: Jacob Keller <jacob.keller@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-03-01 12:24:22 -08:00
..
add.c Merge branch 'jc/add-u-A-default-to-top' into maint 2015-11-05 12:18:12 -08:00
am.c Merge branch 'jc/am-i-v-fix' 2016-02-24 13:26:01 -08:00
annotate.c
apply.c apply, ls-files: simplify "-z" parsing 2016-02-01 14:14:20 -08:00
archive.c
bisect--helper.c
blame.c Merge branch 'nd/ita-cleanup' 2016-01-20 11:43:25 -08:00
branch.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
bundle.c
cat-file.c cat-file: read batch stream with strbuf_getline() 2016-01-15 10:35:06 -08:00
check-attr.c give "nbuf" strbuf a more meaningful name 2016-02-01 13:43:02 -08:00
check-ignore.c give "nbuf" strbuf a more meaningful name 2016-02-01 13:43:02 -08:00
check-mailmap.c strbuf: introduce strbuf_getline_{lf,nul}() 2016-01-15 10:12:51 -08:00
check-ref-format.c
checkout-index.c checkout-index: disallow "--no-stage" option 2016-02-01 13:43:49 -08:00
checkout.c Merge branch 'nd/dwim-wildcards-as-pathspecs' 2016-02-24 13:25:52 -08:00
clean.c Merge branch 'jk/ref-cache-non-repository-optim' 2016-02-03 14:16:07 -08:00
clone.c Merge branch 'ew/force-ipv4' 2016-02-24 13:25:54 -08:00
column.c column: read lines with strbuf_getline() 2016-01-15 10:35:07 -08:00
commit-tree.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
commit.c Merge branch 'jc/strbuf-getline' 2016-01-28 16:10:14 -08:00
config.c config: use xstrfmt in normalize_value 2015-09-25 10:18:18 -07:00
count-objects.c prepare_packed_git(): refactor garbage reporting in pack directory 2015-08-17 09:14:59 -07:00
credential.c
describe.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
diff-files.c
diff-index.c
diff-tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
diff.c Merge branch 'nd/diff-with-path-params' 2016-02-03 14:16:04 -08:00
fast-export.c Merge branch 'js/fopen-harder' 2016-01-20 11:43:35 -08:00
fetch-pack.c strbuf: introduce strbuf_getline_{lf,nul}() 2016-01-15 10:12:51 -08:00
fetch.c Merge branch 'ew/force-ipv4' 2016-02-24 13:25:54 -08:00
fmt-merge-msg.c Merge branch 'rs/pop-commit' into maint 2015-12-11 11:14:13 -08:00
for-each-ref.c ref-filter: add option to match literal pattern 2015-09-17 10:02:49 -07:00
fsck.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
gc.c Merge branch 'dk/gc-idx-wo-pack' into maint 2015-12-04 11:33:08 -08:00
get-tar-commit-id.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
grep.c Merge branch 'jc/peace-with-crlf' 2016-02-03 14:15:58 -08:00
hash-object.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
help.c convert strncpy to memcpy 2015-10-05 11:08:06 -07:00
index-pack.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
init-db.c initdb: make safe_create_dir public 2015-11-20 04:52:01 -05:00
interpret-trailers.c interpret-trailers: add option for in-place editing 2016-01-14 12:22:17 -08:00
log.c format-patch: introduce format.outputDirectory configuration 2016-01-13 10:55:01 -08:00
ls-files.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
ls-remote.c ls-remote: add support for showing symrefs 2016-01-19 10:07:56 -08:00
ls-tree.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
mailinfo.c mailinfo: libify 2015-10-21 15:59:34 -07:00
mailsplit.c mailsplit: make PATH_MAX buffers dynamic 2015-09-25 10:18:18 -07:00
merge-base.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
merge-file.c Merge branch 'jk/merge-file-exit-code' into maint 2015-11-03 15:32:41 -08:00
merge-index.c use sha1_to_hex_r() instead of strcpy 2015-10-05 11:08:05 -07:00
merge-ours.c
merge-recursive.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
merge-tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
merge.c merge: release pack files before garbage-collecting 2016-01-13 11:36:28 -08:00
mktag.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
mktree.c mktree: there are only two possible line terminations 2016-01-15 10:12:58 -08:00
mv.c
name-rev.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
notes.c Merge branch 'jk/notes-merge-from-anywhere' 2016-02-03 14:15:59 -08:00
pack-objects.c list-objects: pass full pathname to callbacks 2016-02-12 12:51:17 -08:00
pack-redundant.c
pack-refs.c
patch-id.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
prune-packed.c
prune.c Merge branch 'jk/repository-extension' into maint 2015-11-03 15:32:25 -08:00
pull.c Merge branch 'jc/strbuf-getline' 2016-01-28 16:10:14 -08:00
push.c Merge branch 'ew/force-ipv4' 2016-02-24 13:25:54 -08:00
read-tree.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
receive-pack.c Merge branch 'js/close-packs-before-gc' 2016-01-26 15:40:29 -08:00
reflog.c Merge branch 'rs/pop-commit' into maint 2015-12-11 11:14:13 -08:00
remote-ext.c remote-ext: simplify git pkt-line generation 2015-09-25 10:18:18 -07:00
remote-fd.c
remote.c remote: handle the config setting branch.*.rebase=interactive 2016-01-13 13:00:01 -08:00
repack.c strbuf: introduce strbuf_getline_{lf,nul}() 2016-01-15 10:12:51 -08:00
replace.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
rerere.c Sync with 2.6.1 2015-10-05 13:20:08 -07:00
reset.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
rev-list.c list-objects: pass full pathname to callbacks 2016-02-12 12:51:17 -08:00
rev-parse.c Merge branch 'nd/git-common-dir-fix' 2016-02-24 13:25:53 -08:00
revert.c
rm.c Merge branch 'nd/ita-cleanup' 2016-01-20 11:43:25 -08:00
send-pack.c send-pack: read list of refs with strbuf_getline() 2016-01-15 10:35:07 -08:00
shortlog.c Merge branch 'jk/shortlog' 2016-01-28 16:10:14 -08:00
show-branch.c Merge branch 'rs/show-branch-argv-array' into maint 2015-12-11 11:14:14 -08:00
show-ref.c show-ref: stop using PARSE_OPT_NO_INTERNAL_HELP 2015-11-20 08:02:07 -05:00
stripspace.c stripspace: call U+0020 a "space" instead of a "blank" 2016-01-29 16:02:34 -08:00
submodule--helper.c git: submodule honor -c credential.* from command line 2016-03-01 12:24:22 -08:00
symbolic-ref.c symbolic-ref: propagate error code from create_symref() 2015-12-21 12:03:03 -08:00
tag.c tag: do not show ambiguous tag names as "tags/foo" 2016-01-26 13:34:10 -08:00
unpack-file.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
unpack-objects.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
update-index.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
update-ref.c tag, update-ref: improve description of option "create-reflog" 2015-09-11 09:50:02 -07:00
update-server-info.c
upload-archive.c upload-archive: convert sprintf to strbuf 2015-09-25 10:18:18 -07:00
var.c
verify-commit.c
verify-pack.c
verify-tag.c verify-tag: add option to print raw gpg status information 2015-06-22 14:20:47 -07:00
worktree.c worktree add -B: do the checkout test before update branch 2016-02-15 15:54:13 -08:00
write-tree.c