Skip to Content
Version Control with Subversion
book

Version Control with Subversion

by Ben Collins-Sussman, Brian W. Fitzpatrick, C. Michael Pilato
June 2004
Intermediate to advanced
319 pages
12h 58m
English
O'Reilly Media, Inc.
Content preview from Version Control with Subversion
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
64
|
Chapter 4: Branching and Merging
Undoing Changes
Another common use for svn merge is to roll back a change that has already been
committed. Suppose you’re working away happily on a working copy of /calc/trunk,
and you discover that the change made way back in revision 303, which changed
integer.c, is completely wrong. It never should have been committed. You can use
svn
merge
to undo the change in your working copy, and then commit the local modifica-
tion to the repository. All you need to do is to specify a reverse difference:
$ svn merge -r 303:302 http://svn.example.com/repos/calc/trunk
U integer.c
$ svn status
M integer.c
$ svn diff
...
# verify that the change is removed
...
$ svn commit -m "Undoing change committed in r303."
Sending integer.c
Transmitting file data .
Committed revision 350.
One way to think about a repository revision is as a specific group of changes (some
version control systems call these changesets). By using the
-r switch, you can ask svn
merge
to apply a changeset, or whole range of changesets, to your working copy. In
our case of undoing a change, we’re asking
svn merge to apply changeset 303 to our
working copy backwards.
Keep in mind that rolling back a change like this is just like any other
svn merge
operation, so you should use svn status and svn diff to confirm ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Subversion Version Control: Using The Subversion Version Control System in Development Projects

Subversion Version Control: Using The Subversion Version Control System in Development Projects

William Nagel
Version Control with Subversion, 2nd Edition

Version Control with Subversion, 2nd Edition

C. Michael Pilato, Ben Collins-Sussman, Brian W. Fitzpatrick

Publisher Resources

ISBN: 0596004486Catalog PageErrata