Windows NT DGPENSV2LPKMN 10.0 build 14393 (Windows Server 2016) AMD64
Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.3.25
: 172.16.0.66 | : 172.16.0.254
Cant Read [ /etc/named.conf ]
7.3.25
SYSTEM
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
[ A ]
[ C ]
[ D ]
C: /
laragon /
bin /
git /
mingw64 /
libexec /
git-core /
[ HOME SHELL ]
Name
Size
Permission
Action
mergetools
[ DIR ]
drwxrwxrwx
Atlassian.Bitbucket.UI.Shared....
22.41
KB
-rw-rw-rw-
Atlassian.Bitbucket.dll
54.91
KB
-rw-rw-rw-
GitHub.UI.Shared.dll
29.41
KB
-rw-rw-rw-
GitHub.dll
83.91
KB
-rw-rw-rw-
GitLab.UI.Shared.dll
24.41
KB
-rw-rw-rw-
GitLab.dll
38.91
KB
-rw-rw-rw-
Microsoft.AzureRepos.dll
60.91
KB
-rw-rw-rw-
Microsoft.Identity.Client.Desk...
106.91
KB
-rw-rw-rw-
Microsoft.Identity.Client.Exte...
61.91
KB
-rw-rw-rw-
Microsoft.Identity.Client.dll
1.45
MB
-rw-rw-rw-
Microsoft.Web.WebView2.Core.dl...
217.91
KB
-rw-rw-rw-
Microsoft.Web.WebView2.WinForm...
32.91
KB
-rw-rw-rw-
Microsoft.Web.WebView2.Wpf.dll
36.91
KB
-rw-rw-rw-
Newtonsoft.Json.dll
685.91
KB
-rw-rw-rw-
System.Buffers.dll
21.41
KB
-rw-rw-rw-
System.CommandLine.dll
211.41
KB
-rw-rw-rw-
System.Memory.dll
138.91
KB
-rw-rw-rw-
System.Numerics.Vectors.dll
107.41
KB
-rw-rw-rw-
System.Runtime.CompilerService...
17.41
KB
-rw-rw-rw-
WebView2Loader.dll
108.92
KB
-rw-rw-rw-
edit.dll
53
KB
-rw-rw-rw-
gcmcore.dll
269.91
KB
-rw-rw-rw-
gcmcoreui.dll
23.41
KB
-rw-rw-rw-
gcmcoreuiwpf.dll
36.41
KB
-rw-rw-rw-
git-add--interactive
48.16
KB
-rw-rw-rw-
git-add.exe
44.55
KB
-rwxrwxrwx
git-am.exe
44.55
KB
-rwxrwxrwx
git-annotate.exe
44.55
KB
-rwxrwxrwx
git-apply.exe
44.55
KB
-rwxrwxrwx
git-archive.exe
44.55
KB
-rwxrwxrwx
git-bisect
2.09
KB
-rw-rw-rw-
git-bisect--helper.exe
44.55
KB
-rwxrwxrwx
git-blame.exe
44.55
KB
-rwxrwxrwx
git-branch.exe
44.55
KB
-rwxrwxrwx
git-bugreport.exe
44.55
KB
-rwxrwxrwx
git-bundle.exe
44.55
KB
-rwxrwxrwx
git-cat-file.exe
44.55
KB
-rwxrwxrwx
git-check-attr.exe
44.55
KB
-rwxrwxrwx
git-check-ignore.exe
44.55
KB
-rwxrwxrwx
git-check-mailmap.exe
44.55
KB
-rwxrwxrwx
git-check-ref-format.exe
44.55
KB
-rwxrwxrwx
git-checkout--worker.exe
44.55
KB
-rwxrwxrwx
git-checkout-index.exe
44.55
KB
-rwxrwxrwx
git-checkout.exe
44.55
KB
-rwxrwxrwx
git-cherry-pick.exe
44.55
KB
-rwxrwxrwx
git-cherry.exe
44.55
KB
-rwxrwxrwx
git-citool
687
B
-rw-rw-rw-
git-clean.exe
44.55
KB
-rwxrwxrwx
git-clone.exe
44.55
KB
-rwxrwxrwx
git-column.exe
44.55
KB
-rwxrwxrwx
git-commit-graph.exe
44.55
KB
-rwxrwxrwx
git-commit-tree.exe
44.55
KB
-rwxrwxrwx
git-commit.exe
44.55
KB
-rwxrwxrwx
git-config.exe
44.55
KB
-rwxrwxrwx
git-count-objects.exe
44.55
KB
-rwxrwxrwx
git-credential-cache--daemon.e...
44.55
KB
-rwxrwxrwx
git-credential-cache.exe
44.55
KB
-rwxrwxrwx
git-credential-store.exe
44.55
KB
-rwxrwxrwx
git-credential-wincred.exe
57.08
KB
-rwxrwxrwx
git-credential.exe
44.55
KB
-rwxrwxrwx
git-daemon.exe
2.05
MB
-rwxrwxrwx
git-describe.exe
44.55
KB
-rwxrwxrwx
git-diff-files.exe
44.55
KB
-rwxrwxrwx
git-diff-index.exe
44.55
KB
-rwxrwxrwx
git-diff-tree.exe
44.55
KB
-rwxrwxrwx
git-diff.exe
44.55
KB
-rwxrwxrwx
git-difftool--helper
2.44
KB
-rw-rw-rw-
git-difftool.exe
44.55
KB
-rwxrwxrwx
git-env--helper.exe
44.55
KB
-rwxrwxrwx
git-fast-export.exe
44.55
KB
-rwxrwxrwx
git-fast-import.exe
44.55
KB
-rwxrwxrwx
git-fetch-pack.exe
44.55
KB
-rwxrwxrwx
git-fetch.exe
44.55
KB
-rwxrwxrwx
git-filter-branch
15.49
KB
-rw-rw-rw-
git-fmt-merge-msg.exe
44.55
KB
-rwxrwxrwx
git-for-each-ref.exe
44.55
KB
-rwxrwxrwx
git-for-each-repo.exe
44.55
KB
-rwxrwxrwx
git-format-patch.exe
44.55
KB
-rwxrwxrwx
git-fsck-objects.exe
44.55
KB
-rwxrwxrwx
git-fsck.exe
44.55
KB
-rwxrwxrwx
git-fsmonitor--daemon.exe
44.55
KB
-rwxrwxrwx
git-gc.exe
44.55
KB
-rwxrwxrwx
git-get-tar-commit-id.exe
44.55
KB
-rwxrwxrwx
git-grep.exe
44.55
KB
-rwxrwxrwx
git-gui
687
B
-rw-rw-rw-
git-gui--askpass
1.8
KB
-rw-rw-rw-
git-gui--askyesno
1.57
KB
-rw-rw-rw-
git-gui.tcl
104.12
KB
-rw-rw-rw-
git-hash-object.exe
44.55
KB
-rwxrwxrwx
git-help.exe
44.55
KB
-rwxrwxrwx
git-hook.exe
44.55
KB
-rwxrwxrwx
git-http-backend.exe
2.05
MB
-rwxrwxrwx
git-http-fetch.exe
2.07
MB
-rwxrwxrwx
git-http-push.exe
2.08
MB
-rwxrwxrwx
git-imap-send.exe
2.08
MB
-rwxrwxrwx
git-index-pack.exe
44.55
KB
-rwxrwxrwx
git-init-db.exe
44.55
KB
-rwxrwxrwx
git-init.exe
44.55
KB
-rwxrwxrwx
git-instaweb
21.65
KB
-rw-rw-rw-
git-interpret-trailers.exe
44.55
KB
-rwxrwxrwx
git-log.exe
44.55
KB
-rwxrwxrwx
git-ls-files.exe
44.55
KB
-rwxrwxrwx
git-ls-remote.exe
44.55
KB
-rwxrwxrwx
git-ls-tree.exe
44.55
KB
-rwxrwxrwx
git-mailinfo.exe
44.55
KB
-rwxrwxrwx
git-mailsplit.exe
44.55
KB
-rwxrwxrwx
git-maintenance.exe
44.55
KB
-rwxrwxrwx
git-merge-base.exe
44.55
KB
-rwxrwxrwx
git-merge-file.exe
44.55
KB
-rwxrwxrwx
git-merge-index.exe
44.55
KB
-rwxrwxrwx
git-merge-octopus
2.42
KB
-rw-rw-rw-
git-merge-one-file
3.61
KB
-rw-rw-rw-
git-merge-ours.exe
44.55
KB
-rwxrwxrwx
git-merge-recursive.exe
44.55
KB
-rwxrwxrwx
git-merge-resolve
944
B
-rw-rw-rw-
git-merge-subtree.exe
44.55
KB
-rwxrwxrwx
git-merge-tree.exe
44.55
KB
-rwxrwxrwx
git-merge.exe
44.55
KB
-rwxrwxrwx
git-mergetool
11.29
KB
-rw-rw-rw-
git-mergetool--lib
9.69
KB
-rw-rw-rw-
git-mktag.exe
44.55
KB
-rwxrwxrwx
git-mktree.exe
44.55
KB
-rwxrwxrwx
git-multi-pack-index.exe
44.55
KB
-rwxrwxrwx
git-mv.exe
44.55
KB
-rwxrwxrwx
git-name-rev.exe
44.55
KB
-rwxrwxrwx
git-notes.exe
44.55
KB
-rwxrwxrwx
git-p4
168.59
KB
-rw-rw-rw-
git-pack-objects.exe
44.55
KB
-rwxrwxrwx
git-pack-redundant.exe
44.55
KB
-rwxrwxrwx
git-pack-refs.exe
44.55
KB
-rwxrwxrwx
git-patch-id.exe
44.55
KB
-rwxrwxrwx
git-prune-packed.exe
44.55
KB
-rwxrwxrwx
git-prune.exe
44.55
KB
-rwxrwxrwx
git-pull.exe
44.55
KB
-rwxrwxrwx
git-push.exe
44.55
KB
-rwxrwxrwx
git-quiltimport
3.61
KB
-rw-rw-rw-
git-range-diff.exe
44.55
KB
-rwxrwxrwx
git-read-tree.exe
44.55
KB
-rwxrwxrwx
git-rebase.exe
44.55
KB
-rwxrwxrwx
git-receive-pack.exe
44.55
KB
-rwxrwxrwx
git-reflog.exe
44.55
KB
-rwxrwxrwx
git-remote-ext.exe
44.55
KB
-rwxrwxrwx
git-remote-fd.exe
44.55
KB
-rwxrwxrwx
git-remote-ftp.exe
2.09
MB
-rwxrwxrwx
git-remote-ftps.exe
2.09
MB
-rwxrwxrwx
git-remote-http.exe
2.09
MB
-rwxrwxrwx
git-remote-https.exe
2.09
MB
-rwxrwxrwx
git-remote.exe
44.55
KB
-rwxrwxrwx
git-repack.exe
44.55
KB
-rwxrwxrwx
git-replace.exe
44.55
KB
-rwxrwxrwx
git-request-pull
4.03
KB
-rw-rw-rw-
git-rerere.exe
44.55
KB
-rwxrwxrwx
git-reset.exe
44.55
KB
-rwxrwxrwx
git-restore.exe
44.55
KB
-rwxrwxrwx
git-rev-list.exe
44.55
KB
-rwxrwxrwx
git-rev-parse.exe
44.55
KB
-rwxrwxrwx
git-revert.exe
44.55
KB
-rwxrwxrwx
git-rm.exe
44.55
KB
-rwxrwxrwx
git-send-email
62.44
KB
-rw-rw-rw-
git-send-pack.exe
44.55
KB
-rwxrwxrwx
git-sh-i18n
1.67
KB
-rw-rw-rw-
git-sh-i18n--envsubst.exe
2.04
MB
-rwxrwxrwx
git-sh-setup
8.92
KB
-rw-rw-rw-
git-shortlog.exe
44.55
KB
-rwxrwxrwx
git-show-branch.exe
44.55
KB
-rwxrwxrwx
git-show-index.exe
44.55
KB
-rwxrwxrwx
git-show-ref.exe
44.55
KB
-rwxrwxrwx
git-show.exe
44.55
KB
-rwxrwxrwx
git-sparse-checkout.exe
44.55
KB
-rwxrwxrwx
git-stage.exe
44.55
KB
-rwxrwxrwx
git-stash.exe
44.55
KB
-rwxrwxrwx
git-status.exe
44.55
KB
-rwxrwxrwx
git-stripspace.exe
44.55
KB
-rwxrwxrwx
git-submodule
11.02
KB
-rw-rw-rw-
git-submodule--helper.exe
44.55
KB
-rwxrwxrwx
git-subtree
23.01
KB
-rw-rw-rw-
git-svn
64.26
KB
-rw-rw-rw-
git-switch.exe
44.55
KB
-rwxrwxrwx
git-symbolic-ref.exe
44.55
KB
-rwxrwxrwx
git-tag.exe
44.55
KB
-rwxrwxrwx
git-unpack-file.exe
44.55
KB
-rwxrwxrwx
git-unpack-objects.exe
44.55
KB
-rwxrwxrwx
git-update
218
B
-rw-rw-rw-
git-update-index.exe
44.55
KB
-rwxrwxrwx
git-update-ref.exe
44.55
KB
-rwxrwxrwx
git-update-server-info.exe
44.55
KB
-rwxrwxrwx
git-upload-archive.exe
44.55
KB
-rwxrwxrwx
git-upload-pack.exe
44.55
KB
-rwxrwxrwx
git-var.exe
44.55
KB
-rwxrwxrwx
git-verify-commit.exe
44.55
KB
-rwxrwxrwx
git-verify-pack.exe
44.55
KB
-rwxrwxrwx
git-verify-tag.exe
44.55
KB
-rwxrwxrwx
git-web--browse
4.3
KB
-rw-rw-rw-
git-whatchanged.exe
44.55
KB
-rwxrwxrwx
git-worktree.exe
44.55
KB
-rwxrwxrwx
git-write-tree.exe
44.55
KB
-rwxrwxrwx
git.exe
3.43
MB
-rwxrwxrwx
headless-git.exe
32.05
KB
-rwxrwxrwx
libbrotlicommon.dll
140.04
KB
-rw-rw-rw-
libbrotlidec.dll
50.64
KB
-rw-rw-rw-
libbz2-1.dll
96.82
KB
-rw-rw-rw-
libcares-5.dll
122.1
KB
-rw-rw-rw-
libcrypto-1_1-x64.dll
2.67
MB
-rw-rw-rw-
libcurl-4.dll
664.15
KB
-rw-rw-rw-
libexpat-1.dll
198.82
KB
-rw-rw-rw-
libffi-8.dll
31.14
KB
-rw-rw-rw-
libgcc_s_seh-1.dll
105.17
KB
-rw-rw-rw-
libgmp-10.dll
641.51
KB
-rw-rw-rw-
libhogweed-6.dll
268.31
KB
-rw-rw-rw-
libiconv-2.dll
1.06
MB
-rw-rw-rw-
libidn2-0.dll
230.63
KB
-rw-rw-rw-
libintl-8.dll
133.52
KB
-rw-rw-rw-
libjansson-4.dll
77.08
KB
-rw-rw-rw-
libjemalloc.dll
674.46
KB
-rw-rw-rw-
liblzma-5.dll
147.65
KB
-rw-rw-rw-
libnettle-8.dll
308.12
KB
-rw-rw-rw-
libnghttp2-14.dll
185.59
KB
-rw-rw-rw-
libp11-kit-0.dll
1.03
MB
-rw-rw-rw-
libpcre-1.dll
275.09
KB
-rw-rw-rw-
libpcre2-8-0.dll
624.85
KB
-rw-rw-rw-
libpcreposix-0.dll
40.77
KB
-rw-rw-rw-
libssh2-1.dll
263.79
KB
-rw-rw-rw-
libssl-1_1-x64.dll
539.65
KB
-rw-rw-rw-
libssp-0.dll
42.41
KB
-rw-rw-rw-
libstdc++-6.dll
1.93
MB
-rw-rw-rw-
libtasn1-6.dll
101.04
KB
-rw-rw-rw-
libtre-5.dll
90.15
KB
-rw-rw-rw-
libunistring-2.dll
1.84
MB
-rw-rw-rw-
libwinpthread-1.dll
56.75
KB
-rw-rw-rw-
libxml2-2.dll
1.28
MB
-rw-rw-rw-
libzstd.dll
810.89
KB
-rw-rw-rw-
tcl86.dll
1.6
MB
-rw-rw-rw-
tk86.dll
1.44
MB
-rw-rw-rw-
zlib1.dll
116.24
KB
-rw-rw-rw-
Delete
Unzip
Zip
${this.title}
Close
Code Editor : git-submodule
#!/bin/sh # # git-submodule.sh: add, init, update or list git submodules # # Copyright (c) 2007 Lars Hjemli dashless=$(basename "$0" | sed -e 's/-/ /') USAGE="[--quiet] [--cached] or: $dashless [--quiet] add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [--] <repository> [<path>] or: $dashless [--quiet] status [--cached] [--recursive] [--] [<path>...] or: $dashless [--quiet] init [--] [<path>...] or: $dashless [--quiet] deinit [-f|--force] (--all| [--] <path>...) or: $dashless [--quiet] update [--init [--filter=<filter-spec>]] [--remote] [-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-shallow] [--reference <repository>] [--recursive] [--[no-]single-branch] [--] [<path>...] or: $dashless [--quiet] set-branch (--default|--branch <branch>) [--] <path> or: $dashless [--quiet] set-url [--] <path> <newurl> or: $dashless [--quiet] summary [--cached|--files] [--summary-limit <n>] [commit] [--] [<path>...] or: $dashless [--quiet] foreach [--recursive] <command> or: $dashless [--quiet] sync [--recursive] [--] [<path>...] or: $dashless [--quiet] absorbgitdirs [--] [<path>...]" OPTIONS_SPEC= SUBDIRECTORY_OK=Yes . git-sh-setup require_work_tree wt_prefix=$(git rev-parse --show-prefix) cd_to_toplevel # Tell the rest of git that any URLs we get don't come # directly from the user, so it can apply policy as appropriate. GIT_PROTOCOL_FROM_USER=0 export GIT_PROTOCOL_FROM_USER command= branch= force= reference= cached= recursive= init= require_init= files= remote= nofetch= update= prefix= custom_name= depth= progress= dissociate= single_branch= jobs= recommend_shallow= filter= isnumber() { n=$(($1 + 0)) 2>/dev/null && test "$n" = "$1" } # Sanitize the local git environment for use within a submodule. We # can't simply use clear_local_git_env since we want to preserve some # of the settings from GIT_CONFIG_PARAMETERS. sanitize_submodule_env() { save_config=$GIT_CONFIG_PARAMETERS clear_local_git_env GIT_CONFIG_PARAMETERS=$save_config export GIT_CONFIG_PARAMETERS } # # Add a new submodule to the working tree, .gitmodules and the index # # $@ = repo path # # optional branch is stored in global branch variable # cmd_add() { # parse $args after "submodule ... add". reference_path= while test $# -ne 0 do case "$1" in -b | --branch) case "$2" in '') usage ;; esac branch=$2 shift ;; -f | --force) force=$1 ;; -q|--quiet) GIT_QUIET=1 ;; --progress) progress=1 ;; --reference) case "$2" in '') usage ;; esac reference_path=$2 shift ;; --reference=*) reference_path="${1#--reference=}" ;; --dissociate) dissociate=1 ;; --name) case "$2" in '') usage ;; esac custom_name=$2 shift ;; --depth) case "$2" in '') usage ;; esac depth="--depth=$2" shift ;; --depth=*) depth=$1 ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done if test -z "$1" then usage fi git ${wt_prefix:+-C "$wt_prefix"} ${prefix:+--super-prefix "$prefix"} submodule--helper add ${GIT_QUIET:+--quiet} ${force:+--force} ${progress:+"--progress"} ${branch:+--branch "$branch"} ${reference_path:+--reference "$reference_path"} ${dissociate:+--dissociate} ${custom_name:+--name "$custom_name"} ${depth:+"$depth"} -- "$@" } # # Execute an arbitrary command sequence in each checked out # submodule # # $@ = command to execute # cmd_foreach() { # parse $args after "submodule ... foreach". while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 ;; --recursive) recursive=1 ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper foreach ${GIT_QUIET:+--quiet} ${recursive:+--recursive} -- "$@" } # # Register submodules in .git/config # # $@ = requested paths (default to all) # cmd_init() { # parse $args after "submodule ... init". while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} ${prefix:+--super-prefix "$prefix"} submodule--helper init ${GIT_QUIET:+--quiet} -- "$@" } # # Unregister submodules from .git/config and remove their work tree # cmd_deinit() { # parse $args after "submodule ... deinit". deinit_all= while test $# -ne 0 do case "$1" in -f|--force) force=$1 ;; -q|--quiet) GIT_QUIET=1 ;; --all) deinit_all=t ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper deinit ${GIT_QUIET:+--quiet} ${force:+--force} ${deinit_all:+--all} -- "$@" } # # Update each submodule path to correct revision, using clone and checkout as needed # # $@ = requested paths (default to all) # cmd_update() { # parse $args after "submodule ... update". while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 ;; -v) unset GIT_QUIET ;; --progress) progress=1 ;; -i|--init) init=1 ;; --require-init) init=1 require_init=1 ;; --remote) remote=1 ;; -N|--no-fetch) nofetch=1 ;; -f|--force) force=$1 ;; -r|--rebase) update="rebase" ;; --reference) case "$2" in '') usage ;; esac reference="--reference=$2" shift ;; --reference=*) reference="$1" ;; --dissociate) dissociate=1 ;; -m|--merge) update="merge" ;; --recursive) recursive=1 ;; --checkout) update="checkout" ;; --recommend-shallow) recommend_shallow="--recommend-shallow" ;; --no-recommend-shallow) recommend_shallow="--no-recommend-shallow" ;; --depth) case "$2" in '') usage ;; esac depth="--depth=$2" shift ;; --depth=*) depth=$1 ;; -j|--jobs) case "$2" in '') usage ;; esac jobs="--jobs=$2" shift ;; --jobs=*) jobs=$1 ;; --single-branch) single_branch="--single-branch" ;; --no-single-branch) single_branch="--no-single-branch" ;; --filter) case "$2" in '') usage ;; esac filter="--filter=$2" shift ;; --filter=*) filter="$1" ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper update \ ${GIT_QUIET:+--quiet} \ ${force:+--force} \ ${progress:+"--progress"} \ ${remote:+--remote} \ ${recursive:+--recursive} \ ${init:+--init} \ ${nofetch:+--no-fetch} \ ${wt_prefix:+--prefix "$wt_prefix"} \ ${prefix:+--recursive-prefix "$prefix"} \ ${update:+--update "$update"} \ ${reference:+"$reference"} \ ${dissociate:+"--dissociate"} \ ${depth:+"$depth"} \ ${require_init:+--require-init} \ ${dissociate:+"--dissociate"} \ $single_branch \ $recommend_shallow \ $jobs \ $filter \ -- \ "$@" } # # Configures a submodule's default branch # # $@ = requested path # cmd_set_branch() { default= branch= while test $# -ne 0 do case "$1" in -q|--quiet) # we don't do anything with this but we need to accept it ;; -d|--default) default=1 ;; -b|--branch) case "$2" in '') usage ;; esac branch=$2 shift ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper set-branch ${GIT_QUIET:+--quiet} ${branch:+--branch "$branch"} ${default:+--default} -- "$@" } # # Configures a submodule's remote url # # $@ = requested path, requested url # cmd_set_url() { while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper set-url ${GIT_QUIET:+--quiet} -- "$@" } # # Show commit summary for submodules in index or working tree # # If '--cached' is given, show summary between index and given commit, # or between working tree and given commit # # $@ = [commit (default 'HEAD'),] requested paths (default all) # cmd_summary() { summary_limit=-1 for_status= diff_cmd=diff-index # parse $args after "submodule ... summary". while test $# -ne 0 do case "$1" in --cached) cached="$1" ;; --files) files="$1" ;; --for-status) for_status="$1" ;; -n|--summary-limit) summary_limit="$2" isnumber "$summary_limit" || usage shift ;; --summary-limit=*) summary_limit="${1#--summary-limit=}" isnumber "$summary_limit" || usage ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper summary ${files:+--files} ${cached:+--cached} ${for_status:+--for-status} ${summary_limit:+-n $summary_limit} -- "$@" } # # List all submodules, prefixed with: # - submodule not initialized # + different revision checked out # # If --cached was specified the revision in the index will be printed # instead of the currently checked out revision. # # $@ = requested paths (default to all) # cmd_status() { # parse $args after "submodule ... status". while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 ;; --cached) cached=1 ;; --recursive) recursive=1 ;; --) shift break ;; -*) usage ;; *) break ;; esac shift done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper status ${GIT_QUIET:+--quiet} ${cached:+--cached} ${recursive:+--recursive} -- "$@" } # # Sync remote urls for submodules # This makes the value for remote.$remote.url match the value # specified in .gitmodules. # cmd_sync() { while test $# -ne 0 do case "$1" in -q|--quiet) GIT_QUIET=1 shift ;; --recursive) recursive=1 shift ;; --) shift break ;; -*) usage ;; *) break ;; esac done git ${wt_prefix:+-C "$wt_prefix"} submodule--helper sync ${GIT_QUIET:+--quiet} ${recursive:+--recursive} -- "$@" } cmd_absorbgitdirs() { git submodule--helper absorb-git-dirs --prefix "$wt_prefix" "$@" } # This loop parses the command line arguments to find the # subcommand name to dispatch. Parsing of the subcommand specific # options are primarily done by the subcommand implementations. # Subcommand specific options such as --branch and --cached are # parsed here as well, for backward compatibility. while test $# != 0 && test -z "$command" do case "$1" in add | foreach | init | deinit | update | set-branch | set-url | status | summary | sync | absorbgitdirs) command=$1 ;; -q|--quiet) GIT_QUIET=1 ;; -b|--branch) case "$2" in '') usage ;; esac branch="$2"; shift ;; --cached) cached="$1" ;; --) break ;; -*) usage ;; *) break ;; esac shift done # No command word defaults to "status" if test -z "$command" then if test $# = 0 then command=status else usage fi fi # "-b branch" is accepted only by "add" and "set-branch" if test -n "$branch" && (test "$command" != add || test "$command" != set-branch) then usage fi # "--cached" is accepted only by "status" and "summary" if test -n "$cached" && test "$command" != status && test "$command" != summary then usage fi "cmd_$(echo $command | sed -e s/-/_/g)" "$@"
Close