]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Merge branch 'cc/fast-import-strip-if-invalid'
authorJunio C Hamano <gitster@pobox.com>
Fri, 5 Dec 2025 05:49:58 +0000 (14:49 +0900)
committerJunio C Hamano <gitster@pobox.com>
Fri, 5 Dec 2025 05:49:58 +0000 (14:49 +0900)
"git fast-import" learns "--strip-if-invalid" option to drop
invalid cryptographic signature from objects.

* cc/fast-import-strip-if-invalid:
  fast-import: add 'strip-if-invalid' mode to --signed-commits=<mode>
  commit: refactor verify_commit_buffer()
  fast-import: refactor finalize_commit_buffer()

1  2 
builtin/fast-export.c
builtin/fast-import.c
gpg-interface.c
gpg-interface.h

index 0421360ab7d7d6c36ce08fb6ff060a92f9eced59,a839a8f9acefde92b21679e57933ef42b4b4765c..b90da5e616e0ef722337837511a73b83cb96a428
@@@ -797,12 -797,10 +797,9 @@@ static void handle_commit(struct commi
               (int)(committer_end - committer), committer);
        if (signatures.nr) {
                switch (signed_commit_mode) {
-               case SIGN_ABORT:
-                       die(_("encountered signed commit %s; use "
-                             "--signed-commits=<mode> to handle it"),
-                           oid_to_hex(&commit->object.oid));
 -
+               /* Exporting modes */
                case SIGN_WARN_VERBATIM:
 -                      warning("exporting %"PRIuMAX" signature(s) for commit %s",
 +                      warning(_("exporting %"PRIuMAX" signature(s) for commit %s"),
                                (uintmax_t)signatures.nr, oid_to_hex(&commit->object.oid));
                        /* fallthru */
                case SIGN_VERBATIM:
                                print_signature(item->string, item->util);
                        }
                        break;
+               /* Stripping modes */
                case SIGN_WARN_STRIP:
 -                      warning("stripping signature(s) from commit %s",
 +                      warning(_("stripping signature(s) from commit %s"),
                                oid_to_hex(&commit->object.oid));
                        /* fallthru */
                case SIGN_STRIP:
@@@ -935,18 -945,18 +945,17 @@@ static void handle_tag(const char *name
                size_t sig_offset = parse_signed_buffer(message, message_size);
                if (sig_offset < message_size)
                        switch (signed_tag_mode) {
-                       case SIGN_ABORT:
-                               die(_("encountered signed tag %s; use "
-                                     "--signed-tags=<mode> to handle it"),
-                                   oid_to_hex(&tag->object.oid));
 -
+                       /* Exporting modes */
                        case SIGN_WARN_VERBATIM:
 -                              warning("exporting signed tag %s",
 +                              warning(_("exporting signed tag %s"),
                                        oid_to_hex(&tag->object.oid));
                                /* fallthru */
                        case SIGN_VERBATIM:
                                break;
+                       /* Stripping modes */
                        case SIGN_WARN_STRIP:
 -                              warning("stripping signature from tag %s",
 +                              warning(_("stripping signature from tag %s"),
                                        oid_to_hex(&tag->object.oid));
                                /* fallthru */
                        case SIGN_STRIP:
Simple merge
diff --cc gpg-interface.c
Simple merge
diff --cc gpg-interface.h
Simple merge