Solved diff or svn

I deleted the whole portstree. Make a svn checkout against head about the whole tree. And get as svn diff: elixier (and something with .gitignore - don't understand) I have never done anything with this. Is there a way to understand svn ????

Is there any way to get the difference of ONE modified port.

I make one other question:
How would you do it, if you want to do this?
 
Walter,
Please do exactly what the handbook says. I don't see anywhere where svn diff --old=. --new=../ is shown as the prescribed syntax.

https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/porters-handbook/port-upgrading.html#svn-diff

svn co https://svn.FreeBSD.org/ports/head/www/mod_scgi
cd mod_scgi


Edit as needed.
svn diff

If you want to just maintain the whole ports tree with SVN, which you may want to if you plan on regularly submitted patches then it will be similar.

rm -r /usr/ports
svn co https://svn.FreeBSD.org/ports/head /usr/ports
cd /usr/ports/www/mod_scgi


Edit as needed.
svn diff
 
I noticed some of your examples had diffs that contained changes to the SVN properties. Use the following form to ignore any changes to the properties, they are of no interested to the committers when you submit your patches:

svn diff --patch-compatible

I hope you now have understood the workflow. The "old" version of a file for svn diff is the last commited version from the central repository in your local checked out copy and the "new" version is your local changes.
 
If the properties are correct then it might save me a whole 10 seconds if I apply it with the svn patch <patchfile.diff> command. If they are wrong and I don't see it the commit may get rejected with invalid properties and I would have to fix it. Personally I could go either way but if you aren't SVN savvy then I would suggest leaving them off and leaving the job to the committer to ensure the properties are correct.
 
I have the next case and it does not work. This time svn diff has no output. I have to do it with
svn diff --patch-compatible --old . --new ../ and edit it. (Let's wait if the committer accept it).
 
OK. Please when something is not working ask why it's not working. This is troubleshooting 101 and sometimes it means asking why, why, why, several times to get to the true root cause.

Is it not working because you added files and didn't edit an existing file? Does svn status show new files and that's all? If so, svn add those files. Is it a new port? If so see the Porter's Handbook for how to create a shar() archive.

There is a root cause for what is going on here and understanding that is how we learn and progressively get better. Let's start with that svn status so we can see what is going on.
 
Code:
svn co https://svn0.us-east.freebsd.org/ports/head/sysutils/lxterminal
cd lxterminal

svn diff and svn status no output.

Code:
svn add ../*
subversion/svn/add-cmd.c:86,
subversion/svn/util.c:739,
subversion/libsvn_client/add.c:1031,
subversion/libsvn_wc/lock.c:1485,
subversion/libsvn_wc/wc_db.c:13969,
subversion/libsvn_wc/wc_db_wcroot.c:679: (apr_err=SVN_ERR_WC_NOT_WORKING_COPY)

svn: E155007: '/usr/ports/sysutils/lxterminal' is not a working copy

I am totally puzzled, maybe I try in the moment something complete wrong.
 
I think I have it (with help from a nice guy). I thought it is a comparison of two directories. I had to make the changes in the with the checkout new created directory. That was the crux.
 
I think I have it (with help from a nice guy). I thought it is a comparison of two directories. I had to make the changes in the with the checkout new created directory. That was the crux.
Yes, SVN is storing the old data it needs in the .svn directory hidden away for the checkout. So there it's just editing the files and letting the tool do its job.
 
Back
Top