Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get a list of all recent SVN commit messages?

Tags:

svn

history

At times I want to revisit a change I committed to SVN a short while back, but don't recall the specific files involved or the revision number. So I would like to see a list of recent commit messages, ideally including the files included in each commit.

I picture going to the root of my working copy and entering something like the following to see the messages and files associated with the most recent 5 commits:

svn log -l5 -v * 

Unfortunately, this command requires a single target, and won't accept '*'. I know SVN has the information I want. Is there a simple way to retrieve it?

like image 274
grw Avatar asked Mar 02 '12 16:03

grw


People also ask

How can I see svn commit history?

To find information about the history of a file or directory, use the svn log command. svn log will provide you with a record of who made changes to a file or directory, at what revision it changed, the time and date of that revision, and, if it was provided, the log message that accompanied the commit.

Where is svn history stored?

They are stored in the svn:log property. You can add the --revprop flag to the various property commands to view & edit this property.

How do I view svn history in eclipse?

Window -> Preferences -> Team -> SVN -> Default number of log messages. Or you can press the ">|" button to see the complete history.

How can I get previous revision from svn?

Using the latest versions of Subclipse, you can actually view them without using the cmd prompt. On the file, simply right-click => Team => Switch to another branch/tag/revision.


Video Answer


2 Answers

You can use svn log -l5 -v <URL of your repository>. svn info can be used to get the root URL for the repository where your working copy is connected to.

like image 116
Rudi Avatar answered Sep 29 '22 12:09

Rudi


svn log -q -v --limit N inside working copy (you have WC, isn't it?!) will show short list of latest N commits with commit-message (mea culpa, -q supress commit-message output) and files only

Log output example - repo

>svn log -q -v http://mayorat.ursinecorner.ru:8088/svn/Hello/ -l 5 ------------------------------------------------------------------------ r33 | lazybadger | 2012-02-28 16:10:41 +0600 (Вт, 28 фев 2012) Changed paths:    M /trunk/Hello.en.txt ------------------------------------------------------------------------ r32 | lazybadger | 2011-12-27 17:37:31 +0600 (Вт, 27 дек 2011) Changed paths:    M /trunk/Hello.de.txt    M /trunk/Hello.en.txt ------------------------------------------------------------------------ r31 | lazybadger | 2011-12-27 17:29:00 +0600 (Вт, 27 дек 2011) Changed paths:    M /trunk/Hello.de.txt    M /trunk/Hello.en.txt    M /trunk/Hello.fr.txt ------------------------------------------------------------------------ r30 | lazybadger | 2011-10-19 16:23:52 +0600 (Ср, 19 окт 2011) Changed paths:    M /trunk ------------------------------------------------------------------------ r29 | lazybadger | 2011-10-19 16:18:43 +0600 (Ср, 19 окт 2011) Changed paths:    M /trunk ------------------------------------------------------------------------ 

Secong log for commit-messages (removed -q -v)

>svn log http://mayorat.ursinecorner.ru:8088/svn/Hello/ -l 5 ------------------------------------------------------------------------ r33 | lazybadger | 2012-02-28 16:10:41 +0600 (Вт, 28 фев 2012) | 1 line  One more change ------------------------------------------------------------------------ r32 | lazybadger | 2011-12-27 17:37:31 +0600 (Вт, 27 дек 2011) | 1 line  Cleanups ------------------------------------------------------------------------ r31 | lazybadger | 2011-12-27 17:29:00 +0600 (Вт, 27 дек 2011) | 1 line  Purification ------------------------------------------------------------------------ r30 | lazybadger | 2011-10-19 16:23:52 +0600 (Ср, 19 окт 2011) | 1 line  Try fix FS #2 ------------------------------------------------------------------------ r29 | lazybadger | 2011-10-19 16:18:43 +0600 (Ср, 19 окт 2011) | 1 line 

If I checkout repo from root and svn log in WC-rot, result will not differ at all

Hello>svn log -q -v -l 5 ------------------------------------------------------------------------ r33 | lazybadger | 2012-02-28 16:10:41 +0600 (Вт, 28 фев 2012) Changed paths:    M /trunk/Hello.en.txt ------------------------------------------------------------------------ r32 | lazybadger | 2011-12-27 17:37:31 +0600 (Вт, 27 дек 2011) Changed paths:    M /trunk/Hello.de.txt    M /trunk/Hello.en.txt ------------------------------------------------------------------------ r31 | lazybadger | 2011-12-27 17:29:00 +0600 (Вт, 27 дек 2011) Changed paths:    M /trunk/Hello.de.txt    M /trunk/Hello.en.txt    M /trunk/Hello.fr.txt ------------------------------------------------------------------------ r30 | lazybadger | 2011-10-19 16:23:52 +0600 (Ср, 19 окт 2011) Changed paths:    M /trunk ------------------------------------------------------------------------ r29 | lazybadger | 2011-10-19 16:18:43 +0600 (Ср, 19 окт 2011) Changed paths:    M /trunk 
like image 41
Lazy Badger Avatar answered Sep 29 '22 13:09

Lazy Badger