On 7/18/06, Paul Burba <paulb@softlanding.com> wrote:
> This patch allows multiple moves/copies of a file/directory in the WC with
> no intervening commit. It is based on a patch originally developed by
> Ivan Zhakov and was most recently discussed in these threads:
>
> http://svn.haxx.se/dev/archive-2006-05/0428.shtml
> http://svn.haxx.se/dev/archive-2006-05/0443.shtml
> http://svn.haxx.se/users/archive-2006-07/0243.shtml
>
> Paul Burba <paulb@softlanding.com> wrote on 07/13/2006 08:30:54 AM:
>
> > "Ivan Zhakov" <chemodax@gmail.com> wrote on 07/12/2006 04:17:49 PM:
> >
> > > On 7/12/06, Paul Burba <paulb@softlanding.com> wrote:
> > > > I'm more than happy to jump back in, but want to check with Ivan
> > first. No
> > > > need to duplicate our efforts.
> > > >
> > > Paul,
> > > Please take it in your hands, because I've changed my job and
> > > unfortunately cannot spend to much time to Subversion now :( Sorry.
> > > I've reviewed your and rooneg patch -- it looks good, one thing that
> > > code for detecting copyfrom_url should be factored out in separated
> > > function.
>
> I factored out the copyfrom* functionality in the latest patch below.
>
> I also added two more tests: move_file_back_and_forth and
> move_dir_back_and_forth. These two tests move a file(dir) to a new
> location, moves it back to the original location, then commits it. The
> patch as it stands now permits this for files, treating the double move as
> a replacement. It doesn't allow it for directories as the current code in
> svn_wc_copy2() prohibits this and returns a SVN_ERR_WC_INVALID_SCHEDULE
> error ("Cannot copy to dir as it is scheduled for deletion"). What do
> folks think should happen in these cases?
>
> Any other thoughts, comments, criticisms, rants, lavish praise, diatribes,
> etc. appreciated.
>
> Paul B.
>
> [[[
> Support copy/move of files/dirs that are already copied/moved but not
> committed.
>
> Patch by: zhakov
> rooneg
> me
>
> * subversion/libsvn_wc/copy.c:
> (get_copyfrom_url_rev_via_parent): New helper function for
> copy_file_administratively and copy_dir_administratively.
> (copy_file_administratively, copy_dir_administratively): Use
> source's copyfrom-url and copyfrom-rev instead of url and rev
> when copying or moving already copied/moved files or directories.
> If source does not have copyfrom info, call then the new helper
> function to climb up source's parent directory and build the
> copyfrom info.
> (Rabbinic Commentary): Removed.
>
> * subversion/tests/cmdline/copy_tests.py
> (copy_copied_file_and_dir, move_copied_file_and_dir,
> move_moved_file_and_dir, move_file_within_moved_dir,
> move_file_out_of_moved_dir, move_dir_within_moved_dir,
> move_dir_out_of_moved_dir, move_file_back_and_forth,
> move_dir_back_and_forth): New tests.
> (test_list): Run new tests.
> ]]]
>
>
Looks good, I'm +1 for commit. Thanks Paul for finishing this!
--
Ivan Zhakov
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jul 19 10:32:21 2006