Wednesday, April 13, 2011

SVN updates summary

I have checked out source code from a SVN server, which is not in my control. I would like to know whenever there are new updates available and classify those as modification, new additions etc. Googling led me to believe "svn status --show-updates" was the command I was looking for. However when I run it on the repository root, it does not gives me the A/M flags but just * in status column. Any ideas on how to get this? TIA.

From stackoverflow
  • A nice tool for the job is CommitMonitor.

    Stefan : I'm sorry, but CommitMonitor only runs on Windows. And I don't know if there's a similar tool for Linux - maybe someone else knows...
  • "svn status" shows you whether your working copy has any changes compared to the repository copy that you checked out. the --show-updates flag shows whether updates are available on the server, and the * means that there are.

    Edit: Ok, if you can go gui, i use subversive in eclipse, but in order to stay commandline, how about this. What you want sounds similar to a dryrun of a merge... you want to see what all the A,D,M will happen when you update to the HEAD. So try this:

    svn merge --dry-run -r BASE:HEAD
    
    John Ellinwood : Ok, I think I figured out what you need. a merge dryrun
  • svn status --show-updates
    

    will put * in front of every file that changed in repository since last update.

    You can see detailed changes between your working copy base (last update) and current repository head using:

    svn log --revision BASE:HEAD
    

    Adding option --verbose will list all changed files prepended with M, A etc. Adding option --quiet will hide commit messages.

    Update:

    svn diff --summarize --revision BASE:HEAD
    

    will list all changed files prepended with M, A etc in all revisions in range collapsed in one list. I guess that's what you're looking for.

  • Try eSvn. It has a feature to show status of files/directories in real time.

0 comments:

Post a Comment

Note: Only a member of this blog may post a comment.