Diff tag against trunk head
Hello, I am using the latest (stable) version on both Linux and WinSlows. For one of my repositories, I created a daily tag of a diary. Example: /project/trunk/important_stuff /project/tags/2010-11-20/important_stuff /project/tags/2010-11-21/important_stuff /project/tags/2010-11-22/important_stuff etc. Each morning I svn copy "important_stuff" (HEAD revision) to the tags area and commit. In theory, this will be used to easily find what changed day-over-day. Of course all of this is possible poking through svn logs, but I want to make this easier. My question: What is the SVN command to diff a file in a tagged set vs trunk head? Fantasy command: svn diff -r"tag:2010-11-21" -rHEAD /project/trunk/important_stuff/details.txt or... svn diff -r"trunk:HEAD" /project/tags/2010-11-21/important_stuff/details.txt I tried many different svn diff commands. No luck. I also did some heavy Google/StackOverflow searching. No luck. Is there a simple way to do this? Right now I am using regular GNU diff, but this requires everyone to download the tags to their box locally. Ideally, this could be done via the trunk or tag URL only. Thanks, Arpe Hongkong
Re: Diff tag against trunk head
On Tue, Nov 23, 2010 at 11:39:00PM +0800, Kevin Connor Arpe wrote: > Hello, > > I am using the latest (stable) version on both Linux and WinSlows. > > For one of my repositories, I created a daily tag of a diary. > > Example: > /project/trunk/important_stuff > /project/tags/2010-11-20/important_stuff > /project/tags/2010-11-21/important_stuff > /project/tags/2010-11-22/important_stuff > etc. > > Each morning I svn copy "important_stuff" (HEAD revision) to the tags > area and commit. > > In theory, this will be used to easily find what changed day-over-day. > Of course all of this is possible poking through svn logs, but I want > to make this easier. > > My question: What is the SVN command to diff a file in a tagged set vs > trunk head? > > Fantasy command: > svn diff -r"tag:2010-11-21" -rHEAD /project/trunk/important_stuff/details.txt > > or... > > svn diff -r"trunk:HEAD" /project/tags/2010-11-21/important_stuff/details.txt > > I tried many different svn diff commands. No luck. I also did some > heavy Google/StackOverflow searching. No luck. > > Is there a simple way to do this? > Right now I am using regular GNU diff, but this requires everyone to > download the tags to their box locally. > > Ideally, this could be done via the trunk or tag URL only. Try this: svn diff URL_OF_TAG URL_OF_TRUNK Stefan
RE: Diff tag against trunk head
> Linedata Limited Registered Office: 85 Gracechurch St., London, EC3V 0AA Registered in England and Wales No 3475006 VAT Reg No 710 3140 03 -Original Message- > From: Kevin Connor Arpe [mailto:kevina...@gmail.com] > Sent: 23 November 2010 15:39 > To: users@subversion.apache.org > Subject: Diff tag against trunk head > > Hello, > > I am using the latest (stable) version on both Linux and WinSlows. > > For one of my repositories, I created a daily tag of a diary. > > Example: > /project/trunk/important_stuff > /project/tags/2010-11-20/important_stuff > /project/tags/2010-11-21/important_stuff > /project/tags/2010-11-22/important_stuff > etc. > > Each morning I svn copy "important_stuff" (HEAD revision) to > the tags area and commit. > > In theory, this will be used to easily find what changed day-over-day. > Of course all of this is possible poking through svn logs, > but I want to make this easier. > > My question: What is the SVN command to diff a file in a > tagged set vs trunk head? > > Fantasy command: > svn diff -r"tag:2010-11-21" -rHEAD > /project/trunk/important_stuff/details.txt > > or... > > svn diff -r"trunk:HEAD" > /project/tags/2010-11-21/important_stuff/details.txt > > I tried many different svn diff commands. No luck. I also > did some heavy Google/StackOverflow searching. No luck. > > Is there a simple way to do this? > Right now I am using regular GNU diff, but this requires > everyone to download the tags to their box locally. > > Ideally, this could be done via the trunk or tag URL only. According to the help you can use this format of the svn diff svn diff old-u...@oldrev] new-u...@newrev] So svn diff http://url.to.repo/project/tags/2010-11-21/important_stuff/details.txt http://url.to.repo/project/trunk/important_stuff/details.txt Try it Giulio
Re: Diff tag against trunk head
On Tue, Nov 23, 2010 at 10:39, Kevin Connor Arpe wrote: > Hello, > > I am using the latest (stable) version on both Linux and WinSlows. > > For one of my repositories, I created a daily tag of a diary. > > Example: > /project/trunk/important_stuff > /project/tags/2010-11-20/important_stuff > /project/tags/2010-11-21/important_stuff > /project/tags/2010-11-22/important_stuff > etc. > > Each morning I svn copy "important_stuff" (HEAD revision) to the tags > area and commit. > > In theory, this will be used to easily find what changed day-over-day. > Of course all of this is possible poking through svn logs, but I want > to make this easier. > > My question: What is the SVN command to diff a file in a tagged set vs > trunk head? > > Fantasy command: > svn diff -r"tag:2010-11-21" -rHEAD /project/trunk/important_stuff/details.txt > > or... > > svn diff -r"trunk:HEAD" /project/tags/2010-11-21/important_stuff/details.txt > > I tried many different svn diff commands. No luck. I also did some > heavy Google/StackOverflow searching. No luck. I'm trying to understand how this tagging & diffing between 2 paths is better/easier than just keeping your single file, and diffing yesterday's date against HEAD. For example: svn diff -r {2010-11-22}:HEAD /project/trunk/important_stuff Use the --summarize switch to just list the paths that have been modified, if that's all you're after. If you're just using the file important_stuff to just keep a running changelog, using svn log with the revision range (yesterday to HEAD) applied to the trunk URL could also work, with a little extra scripting & parsing; especially if you can create an XSL stylesheet to apply to the output of svn log --xml
Re: Diff tag against trunk head
On 11/23/2010 9:39 AM, Kevin Connor Arpe wrote: Hello, I am using the latest (stable) version on both Linux and WinSlows. For one of my repositories, I created a daily tag of a diary. Example: /project/trunk/important_stuff /project/tags/2010-11-20/important_stuff /project/tags/2010-11-21/important_stuff /project/tags/2010-11-22/important_stuff etc. Each morning I svn copy "important_stuff" (HEAD revision) to the tags area and commit. In theory, this will be used to easily find what changed day-over-day. Of course all of this is possible poking through svn logs, but I want to make this easier. Errr, you do know that you can use a date specifier in curly braces as a revision don't you? See the 'Revision Dates' section of the documentation for the recognized formats. You don't really need a tag just for that purpose - but be sure you understand that if you omit the timestamp you get the beginning of the day, not the end. My question: What is the SVN command to diff a file in a tagged set vs trunk head? As others have mentioned you can diff 2 urls - and if you have trouble with the syntax you can add --old= and --new= specifiers. But normally if you are interested in the code, you'll have a checked out copy of the trunk already that you can update to get the head revision, then just 'svn diff -r {-MM-DD}' to diff against the start of a previous day. -- Les Mikesell lesmikes...@gmail.com