同步操作将从 smartavs/shellinabox 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#!/bin/bash -eecho "This script would only work on a Subversion repository"echo "and is only kept for historical purpose... for now."exit 1# The script ensures that all commands succeed unless an error occurred. If it# does though, the shell terminates the script and our exit handler runs.trap 'tput bel || :; echo Failed! >&2' EXIT# Ask the user a yes/no question. This function does not require the user to# press ENTER after making a selection.yes_no() {local cwhile :; doc="$(set +etrap 'stty echo -iuclc icanon 2>/dev/null' EXIT INT TERM QUITstty -echo iuclc -icanon 2>/dev/nulldd count=1 bs=1 2>/dev/null | od -An -tx1)"case "$c" in" 0a") if [ -n "1ドル" ]; then[ 1ドル -eq 0 ] && echo "Y" || echo "N"return 1ドルfi;;" 79") echo "Y"return 0;;" 6e") echo "N"return 1;;"") echo "Aborted" >&2exit 1;;*) # The user pressed an unrecognized key. As we are not echoing# any incorrect user input, alert the user by ringing the bell.(tput bel) 2>/dev/null || :;;esacdone}# Build Debian package and create all the files that are needed by the# distribution maintainer.debian_package() {set -e(# Try to build the package. If things fail, let the exit handler remove all# temporary files.trap 'rm -rf "${prj}-${ver}" "${prj}_${ver}"*' EXIT# Clean up any old temporary filesrm -rf "${prj}-${ver}" "${prj}_${ver}"*# Extract the distribution source archivetar zfx "${prj}-${ver}.tar.gz"# We want to ship the "debian" directory with the source archive that# users download directly from the project web site. This allows them to# easily build their own Debian package by following the instructions in# INSTALL.Debian.# But when preparing our package for direct integration with Debian-based# distributions, we have to instead remove the "debian" directory, as the# distribution prefers that third-party projects are not built "natively".mv "${prj}-${ver}/debian" "${prj}_${ver}_debian"tar zfc "${prj}_${ver}.orig.tar.gz" "${prj}-${ver}"mv "${prj}_${ver}_debian" "${prj}-${ver}/debian"# Reset compatibility levelecho 7 >"${prj}-${ver}/debian/compat"sed -i -e 's/debhelper *([^0-9]*[^)]*)/debhelper (>= 7.0.0)/' \"${prj}-${ver}/debian/control"sed -i -e 's/dh_clean *-k/dh_prep/' "${prj}-${ver}/debian/rules"# Check that the version number in the debian/changelog file matchesif [ "$(sed -e 's/^'"${prj}"' *(\([^-]*\)-.*).*/1円/;t1;d;:1;q' \"${prj}-${ver}/debian/changelog")" != "${ver}" ]; thenecho "Debian changelog file does not match current version number!" >&2exit 1fi# Build Debian packages.(cd "${prj}-${ver}"fakeroot dpkg-buildpackage -sa -us -uc || :)trap '' EXIT# Run lintianlintian --verbose -I ${prj}_${ver}*_*.changes) || exit 1# Revert any changes that might be pending in distributions/debian/*local revert="$(svn st |grep distributions/debian |grep '^[^?]' |awk '{ print 2ドル }' |tac)"if [ -n "${revert}" ]; thensvn revert ${revert}rm -f ${revert}fi# Create distributions/debian if it does not exist yet.mkdir -p distributions/debianfor i in distributions distributions/debian; doif [ -z "$(svn st "${i}" 2>/dev/null | grep -v '^[?]')" ]; thensvn add --depth=empty "${i}"fidone# If this version of files already exists in the distribution directory,# we are not yet ready to cut a new release. Just clean up and exit.for i in "${prj}_${ver}"[-.]*.*; do[ -r "distributions/debian/${i}" ] && {rm $(ls "${prj}_${ver}"[-.]* | egrep -v '_*.changes|_*.deb')return 0}done# Move new Debian files into release area.mv $(ls "${prj}_${ver}"[-.]* | egrep -v '_*.changes|_*.deb') \distributions/debian/svn add distributions/debian/"${prj}_${ver}"[-.]*.*# Let the caller know that we added new packages.return 1}# Quick sanity check that we are running from the correct directorytest -r configure.ac# Make sure there are no stale filessvn update# Determine Subversion revision number, project name, and public version# number{rev=$(($(svn info | sed -e 's/^Revision: \(.*\)/1円/;t1;d;:1;q')+1))prj="$(sed -e 's/^AC_INIT(\([^,]*\),.*/1円/;t1;d;:1;q' configure.ac)"ver="$(sed -e 's/^AC_INIT([^,]*, *\([^,]*\),.*/1円/;t1;d;:1;q' configure.ac)"} 2>/dev/null# Update "configure.ac" with the next Subversion revision number. This# information will trickle down into various source files where it becomes# part of the user-visible version information.sed -i -e 's/^\(VCS_REVISION=\).*/1円'"${rev}"'/' configure.actouch shellinabox/vt100.jspp shellinabox/shell_in_a_box.jspp# If the manual page has been changed, make sure that the time stamp will be# changed, too.if [ -n "$(svn st shellinabox/shellinaboxd.man.in 2>/dev/null |grep '^M')" ]; thensed -i -e 's/^\([.]TH .*\)"[^"]*"/1円"'"$(date +'%b %d, %Y')"'"/s/2008-2[01][0-9][0-9]/2008-'"$(date +'%Y')"'/g' \shellinabox/shellinaboxd.man.infi# Always update the year in the user visible copyright statement(s)for i in shellinabox/shell_in_a_box.jspp \shellinabox/vt100.jspp \COPYING \debian/copyright; dosed -i -e 's/\(2[01][0-9][0-9]-\)2[01][0-9][0-9]/1円'"$(date +'%Y')"'/g' "$i"done# If a source file has changed, make sure to update the year in the copyright# statement for that particular file.svn st | egrep '^[MA]' | awk '{ print 2ドル }' |egrep '^(shellinabox|libhttp|demo)/' |egrep '[.](html|h|c|css|jspp)$' |while read -r f; dosed -i -e 's/\(2[01][0-9][0-9]-\)2[01][0-9][0-9]/1円'"$(date +'%Y')"'/g' "$f"done# For now, Ubuntu/Hardy is still quite popular. We want to make it easy for# our users to build Debian packages from source. So, make sure we lock the# compatibility level at 6. Once we no longer care about maintaining strict# backwards compatibility, we can lift this restriction.echo 6 >debian/compatsed -i -e 's/debhelper *([^0-9]*[^)]*)/debhelper (>= 6.0.0)/' debian/controlsed -i -e 's/dh_prep/dh_clean *-k/' debian/rules# Build all the sources, create the distribution tar archive, and run some# basic sanity checks.make all distcheck# Build Debian package and create all the files that are needed by the# distribution maintainer.msg=debian_package || {msg="${msg}NOTICE: New version released. Please do not forget to notify distributions"if [ -r ~/.shellinabox-notifier ]; thenwhile read e; do{echo "This is an automatically generated e-mail notification that"echo "a new release of ShellInABox has just been made available"echo "on the project's website at http://shellinabox.com"echoecho "You had previously requested to be notified when this happens."} | mail -s "New ShellInABox release" "$e"doneelsemsg="${msg}NOTICE: Could not find ~/.shellinabox-notifier. Not sending e-mail..."fi}svn diff $(svn st |egrep -v ' configure$| aclocal.m4$|distributions|^[?]' |sed -e 's/^[^ ]* *//') | lessecho -n 'Commit these changes (Y/n): 'yes_no 0 || exit 1svn commitecho "${msg}"trap '' EXITexit 0
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。