Work in Subversion
Prior Reading
This documentation assumes that you know how to work in the command line and have
installed a Subversion (SVN) client:
Install a Subversion Client: Mac(for Mac users only)
Install a Subversion Client: Windows(for Windows users only)
Install a Subversion Client: Linux(for Linux users only)
Disambiguation
You will regularly use both SVN and standard Terminal commands when working in your
command line. This documenatation deals only with SVN commands. We recommend that
you keep both this documentation and
Work in the Command Line (Terminal)open until you are comfortable working in the command line and until you understand both:
The difference between the generic Terminal commands (
cd, mkdir, etc.) and the specific Subversion commands described in this page, andWhen to use a generic Terminal command and when to use an SVN command.
Rationale
All LEMDO files are stored in a Subversion repository on an HCMC server. The repository is a safe, accessible, versioned place to keep our work. This
repository maintains a copy of every version of each file. If necessary, we can retrieve
an earlier version of a file or even of the entire project. Once you have installed
a Subversion client, you can interact with the HCMC server. You will be checking out a local copy of the repository during your first work session, updating your local
copy at the beginning of each new work session and regularly throughout those work
sessions, and committing your local changes to the HCMC server.
At the beginning of every work session, you must update your local copy of the LEMDO repository so that you
have the most recent tools and files. We sometimes make global changes across the
repo that may affect your file. Do not assume that because the file is
yoursthat it is exactly the way you left it. Global changes that affect the files of multiple editors are always announced by email through the lemdo_repo_users email list (usually because we have to ask you to pause your work for an hour or so). Improvements to the schema, documentation, and editor tools happen so regularly that we do not announce them; you will want to have the latest tools at your disposal.
We also strongly recommend that you update periodically during long work sessions.
Practice: Use Subversion Commands
All Subversion commands begin with the abbreviation
svn followed by a space. SVN commands will do something only if you are working within
a directory that is checked out from a Subversion repository. In other words, you must have moved
(via your Terminal) into the lemdo directory where you have checked out the LEMDO repository.You will continue to use Terminal commands during your work session. Terminal commands
enable you to move up and down the folder hierarchy in your lemdo directory. SVN commands enable you to change things in that directory.
SVN Commands: Reference Table
The following is a table of common commands used when working with SVN. Each command
should be followed by pressing the Enter/Return key. For more detailed instructions
for using common SVN commands, see the documentation linked to from
Further Reading.
| Action | How to do it |
| Create a lemdo directory and check out the repository |
svn checkout https://hcmc.uvic.ca/svn/lemdo
|
| Find out about the repo |
svn info
|
| Find out the history |
svn log
|
| Get detailed history |
svn log -v
|
| Get history of one file (in this example, stuff/poem.txt) |
svn log -v stuff/poem.txt
|
| Path completion |
svn log -v stuff/p then press Tab |
| Examine changes (in this example, from revision 3 to revision 4) |
svn diff -r 3:4 stuff/poem.txt
|
| Determine responsibility (note that both of these commands will return the exact same result: who committed the most recent change to the specified file) |
svn blame stuff/poem.txt or svn praise stuff/poem.txt
|
| Check the status of your repository (what you have changed, what has yet to be added, etc.) |
svn status
|
| Add a new file (in this example, located at stuff/myfile.txt) |
svn add stuff/myfile.txt
|
| Commit all modified files |
svn commit -m "Adding my poem"
|
| Commit just one file |
svn commit stuff/mypoem.txt -m "Adding @rhyme to all linegroup elements"
|
| Commit a sequence of files |
svn commit myFile.txt stuff/mypoem.txt bibliography.xml -m "Fixing references in myFile
and mypoem and adding citations to the bibliography."
|
Best Practices for working in Subversion
Always do an
svn up at the beginning of and during each work session.Make sure your local file is valid before you commit. See
Validate Files.
Always do an
svn status before you commit.Change into the directory containing the file you want to commit using the command
cd
before you commit the file.Write detailed commit messages.
For your own peace of mind, you might want to make a note of the revision number when
you check out and again when you commit. Every time you or someone else commits a
change to the repository, the revision number increases by 1. If you need us to
roll backto an earlier version of your file, it is helpful to have the revision number.
Other Resources
For further information about how to use Subversion, consult Version Control with Subversion.
Prosopography
Janelle Jenstad
Janelle Jenstad is a Professor of English at the University of Victoria, Director
of The Map of Early Modern London, and Director of Linked Early Modern Drama Online. With Jennifer Roberts-Smith and Mark Kaethler, she co-edited Shakespeare’s Language in Digital Media: Old Words, New Tools (Routledge). She has edited John Stow’s A Survey of London (1598 text) for MoEML and is currently editing The Merchant of Venice (with Stephen Wittek) and Heywood’s 2 If You Know Not Me You Know Nobody for DRE. Her articles have appeared in Digital Humanities Quarterly, Elizabethan Theatre, Early Modern Literary Studies, Shakespeare Bulletin, Renaissance and Reformation, and The Journal of Medieval and Early Modern Studies. She contributed chapters to Approaches to Teaching Othello (MLA); Teaching Early Modern Literature from the Archives (MLA); Institutional Culture in Early Modern England (Brill); Shakespeare, Language, and the Stage (Arden); Performing Maternity in Early Modern England (Ashgate); New Directions in the Geohumanities (Routledge); Early Modern Studies and the Digital Turn (Iter); Placing Names: Enriching and Integrating Gazetteers (Indiana); Making Things and Drawing Boundaries (Minnesota); Rethinking Shakespeare Source Study: Audiences, Authors, and Digital Technologies (Routledge); and Civic Performance: Pageantry and Entertainments in Early Modern London (Routledge). For more details, see janellejenstad.com.
Joey Takeda
Joey Takeda is LEMDO’s Consulting Programmer and Designer, a role he assumed in 2020
after three years as the Lead Developer on LEMDO.
Mahayla Galliford
Project manager, 2025-present; research assistant, 2021-present. Mahayla Galliford
(she/her) graduated with a BA (Hons with distinction) from the University of Victoria
in 2024. Mahayla’s undergraduate research explored early modern stage directions and
civic water pageantry. Mahayla continues her studies through UVic’s English MA program
and her SSHRC-funded thesis project focuses on editing and encoding girls’ manuscripts,
specifically Lady Rachel Fane’s dramatic entertainments, in collaboration with LEMDO.
Martin Holmes
Martin Holmes has worked as a developer in the UVic’s Humanities Computing and Media
Centre for over two decades, and has been involved with dozens of Digital Humanities
projects. He has served on the TEI Technical Council and as Managing Editor of the
Journal of the TEI. He took over from Joey Takeda as lead developer on LEMDO in 2020.
He is a collaborator on the SSHRC Partnership Grant led by Janelle Jenstad.
Navarra Houldin
Training and Documentation Lead 2025–present. LEMDO project manager 2022–2025. Textual
remediator 2021–present. Navarra Houldin (they/them) completed their BA with a major
in history and minor in Spanish at the University of Victoria in 2022. Their primary
research was on gender and sexuality in early modern Europe and Latin America. They
are continuing their education through an MA program in Gender and Social Justice
Studies at the University of Alberta where they will specialize in Digital Humanities.
Nicole Vatcher
Technical Documentation Writer, 2020–2022. Nicole Vatcher completed her BA (Hons.)
in English at the University of Victoria in 2021. Her primary research focus was women’s
writing in the modernist period.
Tracey El Hajj
Junior Programmer 2019–2020. Research Associate 2020–2021. Tracey received her PhD
from the Department of English at the University of Victoria in the field of Science
and Technology Studies. Her research focuses on the algorhythmics of networked communications. She was a 2019–2020 President’s Fellow in Research-Enriched
Teaching at UVic, where she taught an advanced course on
Artificial Intelligence and Everyday Life.Tracey was also a member of the Map of Early Modern London team, between 2018 and 2021. Between 2020 and 2021, she was a fellow in residence at the Praxis Studio for Comparative Media Studies, where she investigated the relationships between artificial intelligence, creativity, health, and justice. As of July 2021, Tracey has moved into the alt-ac world for a term position, while also teaching in the English Department at the University of Victoria.
Orgography
LEMDO Team (LEMD1)
The LEMDO Team is based at the University of Victoria and normally comprises the project
director, the lead developer, project manager, junior developers(s), remediators,
encoders, and remediating editors.
Glossary
directory
“Another word for folder.”
Humanities and Computing Media Centre (HCMC)
“”
repository or
“The repository contains all the files in the LEMDO project. The LEMDO repository
is saved to a server in the basement of the Clearihue Building at UVic. All LEMDO
files are under version control through Subversion, a repository maintenance tool
that keeps a complete history of every change ever made to every LEMDO file.”
repo
Subversion
“An open-source version control system that allows us to keep, track, and restore
every version of every file in the repository.”
svn checkout
“A Terminal command used to download a copy of the entire LEMDO repository to your
local computer.”
Metadata
| Authority title | Work in Subversion |
| Type of text | Documentation |
| Publisher | University of Victoria on the Linked Early Modern Drama Online Platform |
| Series | Linked Early Modern Drama Online |
| Source |
TEI Customization created by Martin Holmes, Joey Takeda, and Janelle Jenstad; documentation written by members of the LEMDO Team
|
| Editorial declaration | n/a |
| Edition | Released with Linked Early Modern Drama Online 1.0 |
| Encoding description | Encoded in TEI P5 according to the LEMDO Customization and Encoding Guidelines |
| Document status | prgGenerated |
| Funder(s) | Social Sciences and Humanities Research Council of Canada |
| License/availability |
This file is licensed under a CC BY-NC_ND 4.0 license, which means that it is freely downloadable without permission under the following
conditions: (1) credit must be given to the author and LEMDO in any subsequent use
of the files and/or data; (2) the content cannot be adapted or repurposed (except
in quotations for the purposes of academic review and citation); and (3) commercial
uses are not permitted without the knowledge and consent of the editor and LEMDO.
This license allows for pedagogical use of the documentation in the classroom.
|