$ rpm -qa --qf '%{NAME} %{VENDOR}\n' | sort | column -t
$ rpm -qa --qf '%{NAME} %{VENDOR}\n' | sort | column -t | head
acl CentOS
acpid CentOS
alsa-lib CentOS
amtu CentOS
anacron CentOS
ant JPackage Project
antlr JPackage Project
apr CentOS
apr CentOS
apr-util CentOS
$ rpm -qa --qf '%{NAME} %{VENDOR}\n' | sort | column -t | grep -iv Centos
$ yum list | grep -i ^php.*pecl
php-pecl-Fileinfo.x86_64 1.0.4-3.el5.centos extras
php-pecl-fileinfo.x86_64 1.0.4-2.el5.rf rpmforge
php-pecl-http.x86_64 1.6.5-2.el5.rf rpmforge
php-pecl-mailparse.x86_64 2.1.5-2.el5.rf rpmforge
php-pecl-memcache.x86_64 2.2.5-2.el5.rf rpmforge
php-pecl-session_mysql.x86_64 1.9-2.el5.rf rpmforge
php-pecl-ssh2.x86_64 0.11.0-1.el5.rf rpmforge
php-pecl-zip.x86_64 1.8.10-2.el5.rf rpmforge
# downloading packages
$ wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5.5/x86_64/ius-release-1.0-6.ius.el5.noarch.rpm
$ wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5.5/x86_64/epel-release-1-1.ius.el5.noarch.rpm
# installing packages
$ rpm -Uvh ius-release-1.0-6.ius.el5.noarch.rpm
$ rpm -Uvh epel-release-1-1.ius.el5.noarch.rpm
# checking which are currently installed
$ yum list | grep -i ^php.*installed
php53.x86_64 5.3.3-1.el5_6.1 installed
php53-cli.x86_64 5.3.3-1.el5_6.1 installed
php53-common.x86_64 5.3.3-1.el5_6.1 installed
php53-devel.x86_64 5.3.3-1.el5_6.1 installed
php53-gd.x86_64 5.3.3-1.el5_6.1 installed
php53-mbstring.x86_64 5.3.3-1.el5_6.1 installed
php53-mysql.x86_64 5.3.3-1.el5_6.1 installed
php53-pdo.x86_64 5.3.3-1.el5_6.1 installed
# removing existing:
$ yum remove php53*
# installing IUS packages:
$ yum install php53u php53u-cli php53u-common php53u-devel php53u-gd php53u-mbstring php53u-mysql php53u-pdo php53u-pear php53u-pecl-apc php53u-xml php53u-xmlrpc php53u-pecl-memcache
# install
$ yum install memcached
# set run levels
$ chkconfig --level 2345 memcached on
# start service
$ /etc/init.d/memcached start
$ php -i | grep -i memcache\ support
memcache support => enabled
<?php
$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
print_r($memcache);
?>
$ php memcachetest.php
Memcache Object
(
[connection] => Resource id #4
)
# First you'll need a local working copy of your trunk
$ cd /path/to/checkout/trunk
$ svn co https://HOSTNAME/repo/trunk .
# The above command will return the latest revision of the trunk
# which you'll need to remember for a later command. Example:
Checked out revision 76.
# If you already have a working copy of your trunk,
# running an "svn update" will set your repo to the latest revision
# and return the latest revision:
$ cd /path/to/checkout/trunk
$ svn update
At revision 76.
# Now, you'll need to find the revision when the branch was created:
$ svn log --stop-on-copy https://HOSTNAME/repo/branches/20091205 | tail -5
------------------------------------------------------------------------
r63 | eric | 2009-10-07 15:10:28 -0400 (Wed, 07 Oct 2009) | 1 line
Created branch.
------------------------------------------------------------------------
# Now that you know the latest trunk revision and the branch created revision,
# you can execute the merge on your local working copy of trunk
# NOTE: it would be a good idea to ensure you are not executing the merge
# in an active environment!
$ cd /path/to/checkout/trunk
$ svn merge -r 63:76 https://HOSTNAME/repo/branches/20091205 .
# NOTE: the revision range syntax is: "-r BRANCH:TRUNK"
# Now if you execute an "svn stat" command you'll see that all the changes from your branch have been applied to your working copy of trunk. Hopefully, there are no conflicts! Now you can review the changes, test your code, and commit.
# find the branch created revision:
$ svn log --stop-on-copy https://HOSTNAME/repo/branches/20091205 | tail -5
------------------------------------------------------------------------
r63 | eric | 2009-10-07 15:10:28 -0400 (Wed, 07 Oct 2009) | 1 line
Created branch.
------------------------------------------------------------------------
# find the latest revision of trunk:
$ svn info https://HOSTNAME/repo/trunk | grep -i ^Last\ Changed\ Rev
Last Changed Rev: 76
# from checked out local copy of branch:
$ svn merge -r 63:76 https://HOSTNAME/repo/trunk .
$ which svn
/usr/bin/svn
$ /usr/bin/svn --version | head -1
svn, version 1.6.2 (r37639)
# lines added to /etc/profile:
export PATH=/opt/subversion/bin:$PATH
$ which svn
/opt/subversion/bin/svn
$ cd /path/to/my/1.6.x/repo
$ svn stat
svn: This client is too old to work with working copy '.'. You need
to get a newer Subversion client, or to downgrade this working copy.
See http://subversion.tigris.org/faq.html#working-copy-format-change
for details.
$ svn --version | head -1
svn, version 1.5.7 (r36142)
$ cd /path/to/my/1.6.x/repo
$ change-svn-wc-format.py . 1.5
Converted WC at '.' into format 9 for Subversion 1.5
$ sudo emacs /etc/yum.repos.d/utterramblings.repo
# FILE CONTENTS - START
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
# FILE CONTENTS - END
$ sudo yum update
# ...snip...
Updated: apr.i386 0:1.2.12-2.jason.1 apr-util.i386 0:1.2.12-5.jason.1 curl.i386 0:7.15.5-2.1.el5_3.5 httpd.i386 0:2.2.8-jason.3 ksh.i386 0:20080202-2.el5_3.1 mod_ssl.i386 1:2.2.8-jason.3 mysql.i386 0:5.0.58-jason.2 mysql-server.i386 0:5.0.58-jason.2 pcre.i386 0:7.6-jason.1 php.i386 0:5.2.6-jason.1 php-cli.i386 0:5.2.6-jason.1 php-common.i386 0:5.2.6-jason.1 php-gd.i386 0:5.2.6-jason.1 php-mbstring.i386 0:5.2.6-jason.1 php-mssql.i386 0:5.2.6-jason.1 php-mysql.i386 0:5.2.6-jason.1 php-odbc.i386 0:5.2.6-jason.1 php-pdo.i386 0:5.2.6-jason.1 php-pear.noarch 1:1.6.2-1.jason.1 php-xml.i386 0:5.2.6-jason.1 php-xmlrpc.i386 0:5.2.6-jason.1 subversion.i386 0:1.4.4-jason.1 tzdata.noarch 0:2009k-1.el5
Complete!
$ php -v | head -1
PHP 5.2.6 (cli) (built: May 5 2008 10:32:59)