1. 08 3月, 2009 1 次提交
  2. 06 3月, 2009 21 次提交
  3. 05 3月, 2009 3 次提交
  4. 04 3月, 2009 14 次提交
  5. 03 3月, 2009 1 次提交
    • J
      send-email: add --confirm option and configuration setting · c1f2aa45
      Jay Soffian 提交于
      send-email violates the principle of least surprise by automatically
      cc'ing additional recipients without confirming this with the user.
      
      This patch teaches send-email a --confirm option. It takes the
      following values:
      
       --confirm=always   always confirm before sending
       --confirm=never    never confirm before sending
       --confirm=cc       confirm before sending when send-email has
                          automatically added addresses from the patch to
                          the Cc list
       --confirm=compose  confirm before sending the first message when
                          using --compose. (Needed to maintain backwards
                          compatibility with existing behavior.)
       --confirm=auto     'cc' + 'compose'
      
      If sendemail.confirm is unconfigured, the option defaults to 'compose'
      if any suppress-Cc related options have been used, otherwise it defaults
      to 'auto'.
      
      Unfortunately, it is impossible to introduce this patch such that it
      helps new users without potentially annoying some existing users. We
      attempt to mitigate the latter by:
      
       * Allowing the user to set 'git config sendemail.confirm never'
       * Allowing the user to say 'all' after the first prompt to not be
         prompted on remaining emails during the same invocation.
       * Telling the user about the 'sendemail.confirm' setting if it is
         unconfigured whenever we prompt due to Cc before sending.
       * Only prompting if no --suppress related options have been passed, as
         using such an option is likely to indicate an experienced send-email
         user.
      
      There is a slight fib in message informing the user of the
      sendemail.confirm setting and this is intentional. Setting 'auto'
      differs from leaving sendemail.confirm unset in two ways: 1) 'auto'
      obviously squelches the informational message; 2) 'auto' prompts when
      the Cc list has been expanded even in the presence of a --suppress
      related option, where leaving sendemail.confirm unset does not. This is
      intentional to keep the message simple, and to avoid adding another
      sendemail.confirm value ('auto-except-suppress'?).
      Signed-off-by: NJay Soffian <jaysoffian@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c1f2aa45