I trimmed the subject line....<br><br>EdorFaus:<br>Thank you for correcting me. =)<br>I have never seen the last commited verison in the local working directory structure so I will have to check that out and see where its located.
<br><br>--Tim.<br><br><div><span class="gmail_quote">On 12/2/06, <b class="gmail_sendername">EdorFaus</b> <<a href="mailto:edorfaus@xepher.net">edorfaus@xepher.net</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 11/30/06, Tin Newsom <<a href="mailto:cephdon@gmail.com">cephdon@gmail.com</a>> wrote:<br><snip><br>> If you are keeping a copy of the current versions locally then diffing and<br>> sending only the diffs would be easy... but to my knowledge svn only keeps
<br>> the diffs between versions at the repository. Someone who knowns please<br><br>As far as I know, this is essentially correct - the repository contains the<br>original file, and the diff for each version since then. This is, afterall,
<br>enough to recreate any version.<br><br>> correct me. If I understand what you are saying and based on my<br>> knowledge...<br>> You either keep an old version for diffing purposes and replace it with the<br>
> current version when you do the commit. All changes happen to the original<br>> not the "old copy"<br><br>I believe this is exactly what svn does. It certainly keeps a copy of the<br>last-committed (or updated-to) version in every working copy, along with the
<br>version being worked on. This allows it to do various things while offline.<br><br><snip><br>> My understanding of svn is that it transmits the entire file and the svn<br>> server does the diff and only stores the differences between the files at
<br>> the repository. I could be wrong about that though.<br><br>No, but I believe this is how CVS works - SVN on the other hand only transmits<br>the diffs in either direction, which is one of its selling points over CVS -
<br>iirc one of the things the SVN developers didn't like about CVS that caused<br>them to make SVN in the first place.<br>(Note: this is from my admittedly faulty memory, so might not be correct.)<br><br>><br>> If you don't keep a repository locally then one way or another you will have
<br>> to obtain a copy of the old version in order to just sync changes somehow..<br><br>This being, I believe, one of the main reasons SVN does keep a copy (of the<br>latest-known-committed version) locally.<br><br>Some other good reasons are things SVN can then do offline,
e.g.<br> - generating diffs (what exactly did I change this time?)<br> - reverting a file (nono, that's no good, let me start over...)<br><br>It can then also more easily update the working copy with new code from the
<br>repository, by seeing local diffs vs diffs in the repository.<br><br>It only keeps one previous version in the working copy though, so for<br>comparing with or reverting to earlier versions, it must still be online.<br>
<br>><br>> Its an interesting thought.. does anyone know for sure if SVN sends back<br>> only the changes and how it does that if it doesn't fetch the previous<br>> version for comparison?<br><br>See above. :)
<br><br>Just FYI, that it keeps a copy of the last version locally is something I've<br>gotten quite familiar with through the use of grep... When I want to find<br>something in the working copy, I usually grep whatever | grep -v .svn to
<br>avoid getting duplicates or finding things I've already changed locally :P<br><br>><br>> --Tim<br>><br>> btw.. I tend to over explain things so if I don't go far enough please ask<br>> me (I am trying to cut back) ;-)
<br>> Also, feel free to correct me if I state something wrong.. I like to be<br>> correct in my understanding and if I don't have all the necessary<br>> information I would like to know what I am missing out on. ;-)
<br><snip><br><br>Seconded. (iow, please apply the same to me.)<br><br>--EdorFaus<br><br>_______________________________________________<br>OpenMoko community mailing list<br><a href="mailto:community@lists.openmoko.org">
community@lists.openmoko.org</a><br><a href="http://lists.openmoko.org/cgi-bin/mailman/listinfo/community">http://lists.openmoko.org/cgi-bin/mailman/listinfo/community</a><br></blockquote></div><br><br clear="all"><br>--
<br>-- Tim