Re: [PATCH 1/3] Move bundle specific stuff into bundle.[ch]
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Jul 18, 2007, 03:29 UTC
- Message-ID
- <20070718032907.GY32566@spearce.org>
- In-Reply-To
- <Pine.LNX.4.64.0707172302560.14596@iabervon.org>
Daniel Barkalow <barkalow@iabervon.org> wrote:
Show 5 quoted lines
> (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.