git-gui: Teach sign off to be more intelligent.

When we sign off on a commit we want to add a blank line between
whatever is in the commit buffer and the new Signed-off-by line,
unless there already is a Signed-off-by (or Acked-by) tag at the end
of the buffer already.  This change makes us do the right thing more
often.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
Shawn O. Pearce 2006-11-11 20:44:03 -05:00
parent 6c6dd01a04
commit 1daf1d0c81

11
git-gui
View File

@ -1510,10 +1510,15 @@ proc do_signoff {} {
} }
} }
set str "Signed-off-by: $GIT_COMMITTER_IDENT" set sob "Signed-off-by: $GIT_COMMITTER_IDENT"
if {[$ui_comm get {end -1c linestart} {end -1c}] != $str} { set last [$ui_comm get {end -1c linestart} {end -1c}]
if {$last != $sob} {
$ui_comm edit separator $ui_comm edit separator
$ui_comm insert end "\n$str" if {$last != {}
&& ![regexp {^[A-Z][A-Za-z]*-[A-Za-z-]+: *} $last]} {
$ui_comm insert end "\n"
}
$ui_comm insert end "\n$sob"
$ui_comm edit separator $ui_comm edit separator
$ui_comm see end $ui_comm see end
} }