DonatShell
Server IP : 180.180.241.3  /  Your IP : 216.73.216.127
Web Server : Microsoft-IIS/7.5
System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586
User : IUSR ( 0)
PHP Version : 5.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Program Files (x86)/Git/bin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : C:/Program Files (x86)/Git/bin/recodetree
#!/bin/sh
# reencode file names in git tree objects from Windows system encoding to UTF-8

usage()
{
	echo "WARNING this script is not intended as a full-fledged and fool-proof
migration utility, but rather as a proof of concept or collection of examples.
Use at your own risk.

In particular, the script doesn't check or fix any non-ascii names in config
files (such as .git/config, .gitignore or .gitmodules). For specific migration
tasks, some of the commands in this script may require tweaking.

Usage: recodetree <command>
recodetree check    Checks git repository for non-ascii file names.
recodetree preview  Same as 'check', but prints file names as if converted
                    from cp$(getcp) to UTF-8.
recodetree head     Converts the current HEAD from cp$(getcp) to UTF-8.
                    Does not commit, use git status to check results first.
recodetree history  Converts entire repository history from cp$(getcp) to UTF-8.
                    WARNING: this rewrites the history of the repository.
                    - Make a BACKUP copy of the repository before using this!
                    - Read 'git help filter-branch' for implications of
                      rewriting history."
}

check()
{
	# use fast-export to dump all file names in the history
	git fast-export --no-data --signed-tags=strip --tag-of-filtered-object=drop --all |
	# use awk to filter for non-ascii names
	awk --posix '/^M [0-9]{6} [0-9a-f]{40} .*[\200-\377]/{print substr($0,51);}'
}

recode()
{
	# convert from system encoding to UTF-8
	iconv -c -f cp$(getcp) -t utf-8
}

recode_tree()
{
	# clear the index
	git rm -f -r -q --cached --ignore-unmatch \*
	# list specified commit, reencode and add to index
	git ls-tree -z -r $1 | recode | git update-index -z --index-info
}

case $1 in
	check)
		check
		;;

	preview)
		check | recode
		;;

	head)
		recode_tree HEAD
		;;

	history)
		git filter-branch --index-filter 'recodetree filter' -- --all
		;;

	filter)
		# used internally by recodetree history
		recode_tree $GIT_COMMIT
		;;

	*)
		usage
		;;
esac

Anon7 - 2022
AnonSec Team