Daniel Barkalow <barkalow@xxxxxxxxxxxx> wrote: > (Someday, I'd like to have a diff that can show that a substantial block > of '+' lines matches a block of lines from somewhere in the "before" > content, so reviewers can verify that the patch reorders code but doesn't > change it, or changes it in certain ways. But, of course, that's both hard > to generate and hard to display usefully.) I just moved a huge block in git-gui so I have a great example... What about a patch format like this? I doubt people move more than 26 blocks in the same patch of the same file, so using a single character block prefix when the before/after images are identical might work OK. diff --git a/git-gui.sh b/git-gui.sh index 0443129..f13fa80 100755 --- a/git-gui.sh +++ b/git-gui.sh a@@ -632,6 +632,43 a@@ You are using [git-version]: ###################################################################### ## a+## feature option selection a+ a+if {[regexp {^git-(.+)$} [appname] _junk subcommand]} { a+ unset _junk a+} else { a+ set subcommand gui a+} a+if {$subcommand eq {gui.sh}} { a+ set subcommand gui a+} a+if {$subcommand eq {gui} && [llength $argv] > 0} { a+ set subcommand [lindex $argv 0] a+ set argv [lrange $argv 1 end] a+} a+ a+enable_option multicommit a+enable_option branch a+enable_option transport a+ a+switch -- $subcommand { a+browser - a+blame { a+ disable_option multicommit a+ disable_option branch a+ disable_option transport a+} a+citool { a+ enable_option singlecommit a+ a+ disable_option multicommit a+ disable_option branch a+ disable_option transport a+} a+} a+ a+###################################################################### a+## ## repository setup if {[catch { a@@ -1598,43 +1635,6 a@@ apply_config ###################################################################### ## a-## feature option selection a- a-if {[regexp {^git-(.+)$} [appname] _junk subcommand]} { a- unset _junk a-} else { a- set subcommand gui a-} a-if {$subcommand eq {gui.sh}} { a- set subcommand gui a-} a-if {$subcommand eq {gui} && [llength $argv] > 0} { a- set subcommand [lindex $argv 0] a- set argv [lrange $argv 1 end] a-} a- a-enable_option multicommit a-enable_option branch a-enable_option transport a- a-switch -- $subcommand { a-browser - a-blame { a- disable_option multicommit a- disable_option branch a- disable_option transport a-} a-citool { a- enable_option singlecommit a- a- disable_option multicommit a- disable_option branch a- disable_option transport a-} a-} a- a-###################################################################### a-## ## ui construction set ui_comm {} -- 1.5.3.rc1.818.g84b7 -- Shawn. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html