Eskil

Diff
Login

Differences From Artifact [ff02aa077e]:

To Artifact [8d8b55c73f]:


259
260
261
262
263
264
265
















266
267
268
269
270
271
272
        }
    }

    if {$old != ""} {
        cd $old
    }
}

















# Get a SVN patch
proc eskil::rev::SVN::getPatch {revs {files {}}} {
    set cmd [list exec svn diff]
    foreach rev $revs {
        # TODO: What happens in strange combinations ?
        if {[string match "*://*" $rev]} {







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
        }
    }

    if {$old != ""} {
        cd $old
    }
}

# List local changes in a checkout
proc eskil::rev::SVN::localChanges {dir} {
    set old [pwd]
    cd $dir
    set info [exec svn status --ignore-externals -q]
    cd $old
    set changes {}
    foreach line [split $info \n] {
        set line [string trim $line]
        if {[regexp {\S+$} $line file]} {
            lappend changes [file join $dir $file]
        }
    }
    return $changes
}

# Get a SVN patch
proc eskil::rev::SVN::getPatch {revs {files {}}} {
    set cmd [list exec svn diff]
    foreach rev $revs {
        # TODO: What happens in strange combinations ?
        if {[string match "*://*" $rev]} {
825
826
827
828
829
830
831
832

833
834
835
836
837
838
839
            set Url [eskil::rev::SVN::LookForBranch $filename $rev]
            if {$Url ne ""} {
                set rev $atRev
            }
        }
        if {$rev eq "_"} {
            # Common name for current
            set rev [eskil::rev::SVN::GetCurrent $filename]

        } elseif {[string is integer -strict $rev] && $rev <= 0} {
            # Zero means current
            # A negative integer rev is a relative rev
            # Save a roundtrip to the server in the case where we
            # can start from current
            if {$Url eq "" && $rev >= -1} {
                set curr [eskil::rev::SVN::GetCurrent $filename]







|
>







841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
            set Url [eskil::rev::SVN::LookForBranch $filename $rev]
            if {$Url ne ""} {
                set rev $atRev
            }
        }
        if {$rev eq "_"} {
            # Common name for current
            #set rev [eskil::rev::SVN::GetCurrent $filename]
            set rev BASE
        } elseif {[string is integer -strict $rev] && $rev <= 0} {
            # Zero means current
            # A negative integer rev is a relative rev
            # Save a roundtrip to the server in the case where we
            # can start from current
            if {$Url eq "" && $rev >= -1} {
                set curr [eskil::rev::SVN::GetCurrent $filename]