Pro PHP- Patterns, Frameworks, Testing and More

(vip2019) #1
CHAPTER 8 ■ TESTING, DEPLOYMENT, AND CONTINUOUS INTEGRATION^107

You will be asked for a commit message. These messages are critical for determining who
changed what and why. For the initial import, just specify Initial Import of <Project> and
save the file.

■Tip You can change the editor Subversion uses for commit messages by setting the EDITOR environment
variable. For example, export EDITOR=pico changes the editor to Pico on a Bash shell.

Your project is now under revision control, but your checkout, having been created before
the import, is now out-of-date and does not reflect the import. This is by design; all checkouts
must be manually updated with the svn update command:

> svn update
A index.html
Updated to revision 1.

■Tip Regularly updating Subversion before changing files will reduce the number of merges you will need
to do.

From now on when you change the files, you change them in a checkout. In fact, you can
back up your original files, because you shouldn’t need to work with them again.
You will notice that each directory in your checkout contains a .svn directory. In some
circumstances, such as when you’re creating a release of your application, you may wish to
obtain a copy without these directories. To get a copy of your project that does not have these
working directories included, use the svn export command:

> svn export file:///usr/local/svn/myfirstrepo ~/exportdirectory
A /home/user/exportdirectory
A /home/user/exportdirectory/index.html
Exported revision 1.

To add new files to your repository, use the svn add command. Adding files is a local modi-
fication, which, unlike importing files, is not saved to the repository until you explicitly save the
change with an svn commit command (discussed next):

> echo test > newfile.txt
> svn add newfile.txt
A newfile.txt
> svn commit
Adding newfile.txt
Transmitting file data.
Committed revision 2.

McArthur_819-9C08.fm Page 107 Friday, February 22, 2008 9:06 AM

Free download pdf