so here's my issue. i have been doing some of my dev work from a
different copy of my application than the actual local copy that's
been checked out from a remove svn repository, for various reasons
that don't matter here.
normally when i do this, i just copy in the few new or changed files,
overwriting whatever's there, and then add (if new) and commit them,
and they appear to the version control as changes that could have been
done in-place, which is what i want.
however, in this case, the changes made are numerous, in the hundreds
of files, all of them starting at a single direcotry "foo" and going
about seven directory levels deep under that.
i don't want to have to copy in the changes file-by-file, it would
take just short of forever!
but i can't just blow away the local "foo" directory and replace with
the new one from my devel version, because then the .svn directory
within each code directory will go missing, and i'm sure that's not
good. at the very least, that would make all the files look like they
were new and needed to be added, and i'd lose all previous version
control tracking of them, right?
i suppose i could do a recursive "remove" of all these files, delete
the existing tree under "foo", copy in the new ones, and then a
recursive "add", but that also would delete any existing version
control info for those directories, right?
so the question is... is there any way i can copy in all the new files
and yet somehow tell svn to use the version control info already
stored in the remote repository for each local directory that's been
changed, rather than assuming they are new files? and that it would
somehow regenerate the .svn directory for each?
or some kind of tool (or sequence of linux commands) that could do a
recursive copy from one folder to another, blowing away all files in
the target directory structure EXCEPT the .svn folders?
anyone know how to do this?
thanks!
Peter Fisera
Earth Angel Consulting
http://earthangelconsulting.com
cheers
Peter 'Fish' Fisera
> -----Original Message-----
> From: trac-...@googlegroups.com On Behalf Of Ernst D. Schoen-Rene
> Sent: 09 December 2011 07:15
> To: trac-...@googlegroups.com
> Cc: Peter 'Fish' Fisera
> Subject: Re: [Trac] question re: how to update multiple
> folders at once
>
> sounds like you want to use some variant of rsync to move the files.
> Rsync will copy files that are newer / different than the destination
> files and leave the rest of the files and the .svn folder untouched.
Assuming I understand you correctly: you have two working copies, one local and one for the remote master repo. You work in your local WC then occasionally want to bulk upload your changes (in one revision) to the master, so you update your master WC, export your changes from local WC => remote WC, check the changes and then commit...
Instead of rsync, I think you can do pretty much what you already do but using the `svn export` [1] command. This copies the folder tree from a working copy to a destination but *without* the .svn control directories.
[1] http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.export.html
I guess this might be easier with a 1.7 WC as that puts all the .svn into the root directory and your subfolders will be clean of control info...
~ mark c
> hi all. i've got a "how-do-i" question here...
>
> [...snip...]
>
> so the question is... is there any way i can copy in all the new files
> and yet somehow tell svn to use the version control info already
> stored in the remote repository for each local directory that's been
> changed, rather than assuming they are new files? and that it would
> somehow regenerate the .svn directory for each?
>
> or some kind of tool (or sequence of linux commands) that could do a
> recursive copy from one folder to another, blowing away all files in
> the target directory structure EXCEPT the .svn folders?
>
> anyone know how to do this?
From the directory that contains the changed foo directory:
find foo -type f | sed '/\.svn/d' \
| while read name; do cp "$name" target-dir/"$name"; done
where target-dir is the directory in your svn working copy that holds
foo. Filenames with spaces will be handled correctly. Should there be
any .svn stuff in the changed foo directory, it will be ignored.
Hope this helps,
--
Olaf Meeuwissen, LPIC-2 FLOSS Engineer -- AVASYS CORPORATION
FSF Associate Member #1962 Help support software freedom
http://www.fsf.org/jf?referrer=1962
find foo -type f -mtime -3 | grep -v .svn | cpio -pmuvd <target-dir>
where -3 means changes in the last 3 days.
Regards
On Dec 9, 7:26 am, Olaf Meeuwissen <olaf.meeuwis...@avasys.jp> wrote:
regards,
Peter 'Fish' Fisera
Earth Angel Consulting
Quoting Christian Eva <chri...@quest.ie>:
> --
> You received this message because you are subscribed to the Google
> Groups "Trac Users" group.
> To post to this group, send email to trac-...@googlegroups.com.
> To unsubscribe from this group, send email to
> trac-users+...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/trac-users?hl=en.
>
>
>