Eskil

Check-in [7699685063]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Support commit in Git.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 769968506385573fe16c5b9304fc885dcfbeee4a
User & Date: peter.spjuth@gmail.com 2011-04-03 23:50:29.000
Context
2011-04-04
00:07
Support commit in Fossil check-in: 124cbad284 user: peter.spjuth@gmail.com tags: trunk
2011-04-03
23:50
Support commit in Git. check-in: 7699685063 user: peter.spjuth@gmail.com tags: trunk
23:23
Support multiple file commit. check-in: e0dbe9361b user: peter.spjuth@gmail.com tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/rev.tcl.
406
407
408
409
410
411
412



413
414
415
416
417
418
419
    set tail [file tail $filename]
    # Locate the top directory
    while {![file isdirectory $dir/.git]} {
        set thisdir [file tail $dir]
        set dir [file dirname $dir]
        set tail [file join $thisdir $tail]
    }



    cd $dir
    catch {exec git show $rev:$tail > $outfile}
    cd $old
    # example: git show HEAD^^^:apa
}

# Add file to GIT index







>
>
>







406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
    set tail [file tail $filename]
    # Locate the top directory
    while {![file isdirectory $dir/.git]} {
        set thisdir [file tail $dir]
        set dir [file dirname $dir]
        set tail [file join $thisdir $tail]
    }
    if {$rev eq ""} {
        set rev HEAD
    }
    cd $dir
    catch {exec git show $rev:$tail > $outfile}
    cd $old
    # example: git show HEAD^^^:apa
}

# Add file to GIT index
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
    # Locate the top directory
    while {![file exists $dir/_FOSSIL_]} {
        set thisdir [file tail $dir]
        set dir [file dirname $dir]
        set tail [file join $thisdir $tail]
    }
    cd $dir
    if {$rev eq "HEAD"} {
        catch {exec fossil finfo -p $tail > $outfile}
    } else {
        catch {exec fossil finfo -p $tail -r $rev > $outfile}
    }
    cd $old
}








|







456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
    # Locate the top directory
    while {![file exists $dir/_FOSSIL_]} {
        set thisdir [file tail $dir]
        set dir [file dirname $dir]
        set tail [file join $thisdir $tail]
    }
    cd $dir
    if {$rev eq "HEAD" || $rev eq ""} {
        catch {exec fossil finfo -p $tail > $outfile}
    } else {
        catch {exec fossil finfo -p $tail -r $rev > $outfile}
    }
    cd $old
}

595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
    foreach rev $revs {
        switch -glob -- $rev {
            HEAD - master - * { # Let anything through for now
                lappend result $rev
            }
        }
    }
    if {[llength $result] == 0} {
        set result [list HEAD]
    }
    return $result
}

# Figure out FOSSIL revision from arguments
proc eskil::rev::FOSSIL::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {
        switch -glob -- $rev {
            HEAD - master - * { # Let anything through for now FIXA
                lappend result $rev
            }
        }
    }
    if {[llength $result] == 0} {
        set result [list HEAD]
    }
    return $result
}

# Figure out HG revision from arguments
proc eskil::rev::HG::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {







<
<
<













<
<
<







598
599
600
601
602
603
604



605
606
607
608
609
610
611
612
613
614
615
616
617



618
619
620
621
622
623
624
    foreach rev $revs {
        switch -glob -- $rev {
            HEAD - master - * { # Let anything through for now
                lappend result $rev
            }
        }
    }



    return $result
}

# Figure out FOSSIL revision from arguments
proc eskil::rev::FOSSIL::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {
        switch -glob -- $rev {
            HEAD - master - * { # Let anything through for now FIXA
                lappend result $rev
            }
        }
    }



    return $result
}

# Figure out HG revision from arguments
proc eskil::rev::HG::ParseRevs {filename revs} {
    set result ""
    foreach rev $revs {
801
802
803
804
805
806
807



















808
809
810
811
812
813
814
        set target "[file tail [lindex $args 0]] ..."
    }        
    set logmsg [LogDialog $top $target]
    if {$logmsg ne ""} {
        catch {exec svn -q commit -m $logmsg {*}$args}
    }
}




















# View log between displayed versions
proc eskil::rev::CVS::viewLog {top filename revs} {
    set cmd [list exec cvs -q log -N]
    if {[llength $revs] > 1} {
        lappend cmd -r[join $revs ":"]
    } else {







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







798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
        set target "[file tail [lindex $args 0]] ..."
    }        
    set logmsg [LogDialog $top $target]
    if {$logmsg ne ""} {
        catch {exec svn -q commit -m $logmsg {*}$args}
    }
}

# Check in GIT controlled file
proc eskil::rev::GIT::commitFile {top args} {
    if {[llength $args] == 0} {
        set target all
    } elseif {[llength $args] == 1} {
        set target [file tail [lindex $args 0]]
    } else {
        set target "[file tail [lindex $args 0]] ..."
    }        
    set logmsg [LogDialog $top $target]
    if {$logmsg eq ""} return

    if {[llength $args] == 0} {
        catch {exec git commit -a -m $logmsg}
    } else {
        catch {exec git commit -m $logmsg {*}$args}
    }
}

# View log between displayed versions
proc eskil::rev::CVS::viewLog {top filename revs} {
    set cmd [list exec cvs -q log -N]
    if {[llength $revs] > 1} {
        lappend cmd -r[join $revs ":"]
    } else {