How to checkout a specific Subversion revision from the command line?

595,407

Solution 1

If you already have it checked out locally then you can cd to where it is checked out, then use this syntax:

$ svn up -rXXXX

ref: Checkout a specific revision from subversion from command line

Solution 2

Either

svn checkout url://repository/path@1234

or

svn checkout -r 1234 url://repository/path

Solution 3

Any reason for using TortoiseProc instead of just the normal svn command line?

I'd use:

svn checkout svn://somepath@1234 working-directory

(to get revision 1234)

Solution 4

You should never use TortoiseProc.exe as a command-line Subversion client! TortoiseProc should be utilized only for automating TortoiseSVN's GUI. See the note in TortoiseSVN's Manual:

Remember that TortoiseSVN is a GUI client, and this automation guide shows you how to make the TortoiseSVN dialogs appear to collect user input. If you want to write a script which requires no input, you should use the official Subversion command line client instead.

Use the Subversion command-line svn.exe client. With the command-line client, you can

You may notice that with svn checkout and svn export you can enter REV number as --revision REV argument and as trailing @REV after URL. The first one is called operative revision, and the second one is called peg revision. Read SVNBook for more information about peg and operative revisions concept.

Solution 5

svn checkout to revision where your repository is on another server

Use svn log command to find out which revisions are available:

svn log

Which prints:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

Note the number r761. Here is the command description:

svn export http://url-to-your-file@761 /tmp/filename

I used this command specifically:

svn export svn+ssh://[email protected]/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

Which causes calcFeatures.m revision 761 to be checked out to the current directory.

Share:
595,407
Admin
Author by

Admin

Updated on February 15, 2020

Comments

  • Admin
    Admin about 4 years

    I want to checkout a specific revision of a folder in Subversion using the command line.

    I don't see an option for specifying the revision number in TortoiseProc.exe,

    TortoiseProc.exe /command:checkout <url>
    

    How do I get the revision I want? Is TortoiseProc.exe the right tool for what I want to do?

  • ahnbizcad
    ahnbizcad almost 9 years
    as far as what I see, i think an example can help. do you include or not include the brackets? what about 3 periods? what about the space after the 3 periods? Which characters are literal, and which are placeholders, and which are added characters for the placeholders?
  • IgorGanapolsky
    IgorGanapolsky over 7 years
    For some reason this does nothing for me. Still at the old revision.
  • Admin
    Admin over 7 years
    @IgorGanapolsky Have you locally modified the file you're trying to update?
  • Elijah Lofgren
    Elijah Lofgren over 6 years
    I had to remove space after -r so "-r1234" worked for me.
  • Dilip Raj Baral
    Dilip Raj Baral over 5 years
    How do you do hard reset? (Ignoring conflicts?)
  • Gavin S. Yancey
    Gavin S. Yancey over 3 years
    @DilipRajBaral svn revert on a specific file, or svn revert --depth infinity to reset recursively
  • Brent
    Brent almost 3 years
    How do I confirm that this command was successful? svn info --show-item revision shows a different number than the one I entered.
  • osullic
    osullic over 2 years
    What repository browser?
  • osullic
    osullic over 2 years
    What is co? I feel like this answer needs some expansion/explanation
  • K J
    K J almost 2 years
    Reason: Windows