[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH][merge-tracking]merge --record-only should be no-op in dry-run mode

From: Kamesh Jayachandran <kamesh_at_collab.net>
Date: 2007-01-25 11:08:20 CET

Hi,

Sorry for the void mail.

Pressed the send button quicker.

Find the patch now.

With regards
Kamesh Jayachandran

Kamesh Jayachandran wrote:
> Hi All,
> Find the attached patch and log.
>
> Without this patch --record-only along with --dry-run spits out like
> the following,
> <snip>
> ../subversion/libsvn_wc/lock.c:1397: (apr_err=155005)
> svn: No write-lock in '.'
> </snip>
>
> With regards
> Kamesh Jayachandran
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
>

[[[
The --record-only switch should not record anything in dry-run mode.

* subversion/libsvn_client/diff.c
  (do_merge, do_single_file_merge): As mentioned in the above summary.

Patch by: kameshj
]]]

Index: subversion/libsvn_client/diff.c
===================================================================
--- subversion/libsvn_client/diff.c (revision 23227)
+++ subversion/libsvn_client/diff.c (working copy)
@@ -2335,15 +2335,20 @@
          merge for the specified range. */
       if (merge_b->record_only)
         {
- /* ### TODO: Support sub-tree merge info. */
- /* ### Handle WC-local reverts which have modified our merge
- ### info. */
- apr_hash_t *merges;
- SVN_ERR(determine_merges_performed(&merges, target_wcpath, &range,
- &notify_b, pool));
- return update_wc_merge_info(target_wcpath, entry, rel_path,
- merges, is_revert, ra_session,
- adm_access, ctx, pool);
+ if (!merge_b->dry_run)
+ {
+ /* ### TODO: Support sub-tree merge info. */
+ /* ### Handle WC-local reverts which have modified our merge
+ ### info. */
+ apr_hash_t *merges;
+ SVN_ERR(determine_merges_performed(&merges, target_wcpath, &range,
+ &notify_b, pool));
+ return update_wc_merge_info(target_wcpath, entry, rel_path,
+ merges, is_revert, ra_session,
+ adm_access, ctx, pool);
+ }
+ else
+ return SVN_NO_ERROR;
         }
 
       SVN_ERR(calculate_merge_ranges(&remaining_ranges, rel_path,
@@ -2618,15 +2623,20 @@
          merge for the specified range. */
       if (merge_b->record_only)
         {
- /* ### TODO: Support sub-tree merge info. */
- /* ### Handle WC-local reverts which have modified our merge
- ### info. */
- apr_hash_t *merges;
- SVN_ERR(determine_merges_performed(&merges, target_wcpath, &range,
- &notify_b, pool));
- return update_wc_merge_info(target_wcpath, entry, rel_path,
- merges, is_revert, ra_session1,
- adm_access, ctx, pool);
+ if (!merge_b->dry_run)
+ {
+ /* ### TODO: Support sub-tree merge info. */
+ /* ### Handle WC-local reverts which have modified our merge
+ ### info. */
+ apr_hash_t *merges;
+ SVN_ERR(determine_merges_performed(&merges, target_wcpath, &range,
+ &notify_b, pool));
+ return update_wc_merge_info(target_wcpath, entry, rel_path,
+ merges, is_revert, ra_session1,
+ adm_access, ctx, pool);
+ }
+ else
+ return SVN_NO_ERROR;
         }
 
       SVN_ERR(calculate_merge_ranges(&remaining_ranges, rel_path,

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jan 25 11:07:55 2007

This is an archived mail posted to the Subversion Dev mailing list.