@@ -194,24 +194,6 @@ static void determine_whence(struct wt_status *s)
194194 s -> whence = whence ;
195195}
196196
197- static const char * whence_s (void )
198- {
199- const char * s = "" ;
200-
201- switch (whence ) {
202- case FROM_COMMIT :
203- break ;
204- case FROM_MERGE :
205- s = _ ("merge" );
206- break ;
207- case FROM_CHERRY_PICK :
208- s = _ ("cherry-pick" );
209- break ;
210- }
211-
212- return s ;
213- }
214-
215197static void rollback_index_files (void )
216198{
217199 switch (commit_style ) {
@@ -453,8 +435,12 @@ static char *prepare_index(int argc, const char **argv, const char *prefix,
453435 */
454436 commit_style = COMMIT_PARTIAL ;
455437
456- if (whence != FROM_COMMIT )
457- die (_ ("cannot do a partial commit during a %s." ), whence_s ());
438+ if (whence != FROM_COMMIT ) {
439+ if (whence == FROM_MERGE )
440+ die (_ ("cannot do a partial commit during a merge." ));
441+ else if (whence == FROM_CHERRY_PICK )
442+ die (_ ("cannot do a partial commit during a cherry-pick." ));
443+ }
458444
459445 memset (& partial , 0 , sizeof (partial ));
460446 partial .strdup_strings = 1 ;
@@ -796,28 +782,31 @@ static int prepare_to_commit(const char *index_file, const char *prefix,
796782 char * ai_tmp , * ci_tmp ;
797783 if (whence != FROM_COMMIT )
798784 status_printf_ln (s , GIT_COLOR_NORMAL ,
799- _ ("\n"
800- "It looks like you may be committing a %s.\n"
801- "If this is not correct, please remove the file\n"
802- " %s\n"
803- "and try again.\n"
804- "" ),
805- whence_s (),
785+ whence == FROM_MERGE
786+ ? _ ("\n"
787+ "It looks like you may be committing a merge.\n"
788+ "If this is not correct, please remove the file\n"
789+ " %s\n"
790+ "and try again.\n" )
791+ : _ ("\n"
792+ "It looks like you may be committing a cherry-pick.\n"
793+ "If this is not correct, please remove the file\n"
794+ " %s\n"
795+ "and try again.\n" ),
806796 git_path (whence == FROM_MERGE
807797 ? "MERGE_HEAD"
808798 : "CHERRY_PICK_HEAD" ));
809799
810800 fprintf (s -> fp , "\n" );
811- status_printf (s , GIT_COLOR_NORMAL ,
812- _ ("Please enter the commit message for your changes." ));
813801 if (cleanup_mode == CLEANUP_ALL )
814- status_printf_more (s , GIT_COLOR_NORMAL ,
815- _ (" Lines starting\n "
816- "with '#' will be ignored, and an empty"
802+ status_printf (s , GIT_COLOR_NORMAL ,
803+ _ ("Please enter the commit message for your changes. "
804+ " Lines starting\nwith '#' will be ignored, and an empty"
817805 " message aborts the commit.\n" ));
818806 else /* CLEANUP_SPACE, that is. */
819- status_printf_more (s , GIT_COLOR_NORMAL ,
820- _ (" Lines starting\n"
807+ status_printf (s , GIT_COLOR_NORMAL ,
808+ _ ("Please enter the commit message for your changes."
809+ " Lines starting\n"
821810 "with '#' will be kept; you may remove them"
822811 " yourself if you want to.\n"
823812 "An empty message aborts the commit.\n" ));
@@ -1072,8 +1061,12 @@ static int parse_and_validate_options(int argc, const char *argv[],
10721061 /* Sanity check options */
10731062 if (amend && !current_head )
10741063 die (_ ("You have nothing to amend." ));
1075- if (amend && whence != FROM_COMMIT )
1076- die (_ ("You are in the middle of a %s -- cannot amend." ), whence_s ());
1064+ if (amend && whence != FROM_COMMIT ) {
1065+ if (whence == FROM_MERGE )
1066+ die (_ ("You are in the middle of a merge -- cannot amend." ));
1067+ else if (whence == FROM_CHERRY_PICK )
1068+ die (_ ("You are in the middle of a cherry-pick -- cannot amend." ));
1069+ }
10771070 if (fixup_message && squash_message )
10781071 die (_ ("Options --squash and --fixup cannot be used together" ));
10791072 if (use_message )
0 commit comments