]>
Commit | Line | Data |
---|---|---|
75194438 JK |
1 | #ifndef ADVICE_H |
2 | #define ADVICE_H | |
3 | ||
d38a30df MM |
4 | #include "git-compat-util.h" |
5 | ||
a20f7047 MT |
6 | struct string_list; |
7 | ||
377444b4 | 8 | extern int advice_fetch_show_forced_updates; |
1184564e | 9 | extern int advice_push_update_rejected; |
f25950f3 | 10 | extern int advice_push_non_ff_current; |
f25950f3 | 11 | extern int advice_push_non_ff_matching; |
b4505682 | 12 | extern int advice_push_already_exists; |
75e5c0dc JH |
13 | extern int advice_push_fetch_first; |
14 | extern int advice_push_needs_force; | |
dd8dd300 | 15 | extern int advice_push_unqualified_ref_name; |
3b990aa6 | 16 | extern int advice_push_ref_needs_update; |
edf563fb | 17 | extern int advice_status_hints; |
6a38ef2c | 18 | extern int advice_status_u_option; |
0a53561a | 19 | extern int advice_status_ahead_behind_warning; |
4c371f91 | 20 | extern int advice_commit_before_merge; |
649bf3a4 | 21 | extern int advice_reset_quiet_warning; |
d38a30df | 22 | extern int advice_resolve_conflict; |
6a1f9046 | 23 | extern int advice_sequencer_in_use; |
b706fcfe | 24 | extern int advice_implicit_identity; |
13be3e31 | 25 | extern int advice_detached_head; |
caa2036b | 26 | extern int advice_set_upstream_failure; |
798c35fc | 27 | extern int advice_object_name_warning; |
431bb23a | 28 | extern int advice_amworkdir; |
7e309446 | 29 | extern int advice_rm_hints; |
53213994 | 30 | extern int advice_add_embedded_repo; |
f805a00a | 31 | extern int advice_ignored_hook; |
abfb04d0 | 32 | extern int advice_waiting_for_editor; |
f9f99b3f | 33 | extern int advice_graft_file_deprecated; |
ad8d5104 | 34 | extern int advice_checkout_ambiguous_remote_branch_name; |
4f3e57ef | 35 | extern int advice_submodule_alternate_error_strategy_die; |
887a0fd5 HW |
36 | extern int advice_add_ignored_file; |
37 | extern int advice_add_empty_pathspec; | |
75194438 | 38 | |
b3b18d16 HW |
39 | /* |
40 | * To add a new advice, you need to: | |
41 | * Define a new advice_type. | |
42 | * Add a new entry to advice_setting array. | |
43 | * Add the new config variable to Documentation/config/advice.txt. | |
44 | * Call advise_if_enabled to print your advice. | |
45 | */ | |
46 | enum advice_type { | |
47 | ADVICE_ADD_EMBEDDED_REPO, | |
48 | ADVICE_AM_WORK_DIR, | |
49 | ADVICE_CHECKOUT_AMBIGUOUS_REMOTE_BRANCH_NAME, | |
50 | ADVICE_COMMIT_BEFORE_MERGE, | |
51 | ADVICE_DETACHED_HEAD, | |
52 | ADVICE_FETCH_SHOW_FORCED_UPDATES, | |
53 | ADVICE_GRAFT_FILE_DEPRECATED, | |
54 | ADVICE_IGNORED_HOOK, | |
55 | ADVICE_IMPLICIT_IDENTITY, | |
56 | ADVICE_NESTED_TAG, | |
57 | ADVICE_OBJECT_NAME_WARNING, | |
58 | ADVICE_PUSH_ALREADY_EXISTS, | |
59 | ADVICE_PUSH_FETCH_FIRST, | |
60 | ADVICE_PUSH_NEEDS_FORCE, | |
61 | ADVICE_PUSH_NON_FF_CURRENT, | |
62 | ADVICE_PUSH_NON_FF_MATCHING, | |
63 | ADVICE_PUSH_UNQUALIFIED_REF_NAME, | |
64 | ADVICE_PUSH_UPDATE_REJECTED_ALIAS, | |
65 | ADVICE_PUSH_UPDATE_REJECTED, | |
3b990aa6 | 66 | ADVICE_PUSH_REF_NEEDS_UPDATE, |
b3b18d16 HW |
67 | ADVICE_RESET_QUIET_WARNING, |
68 | ADVICE_RESOLVE_CONFLICT, | |
69 | ADVICE_RM_HINTS, | |
70 | ADVICE_SEQUENCER_IN_USE, | |
71 | ADVICE_SET_UPSTREAM_FAILURE, | |
72 | ADVICE_STATUS_AHEAD_BEHIND_WARNING, | |
73 | ADVICE_STATUS_HINTS, | |
74 | ADVICE_STATUS_U_OPTION, | |
75 | ADVICE_SUBMODULE_ALTERNATE_ERROR_STRATEGY_DIE, | |
a20f7047 | 76 | ADVICE_UPDATE_SPARSE_PATH, |
b3b18d16 HW |
77 | ADVICE_WAITING_FOR_EDITOR, |
78 | }; | |
79 | ||
75194438 | 80 | int git_default_advice_config(const char *var, const char *value); |
4621085b | 81 | __attribute__((format (printf, 1, 2))) |
38ef61cf | 82 | void advise(const char *advice, ...); |
b3b18d16 HW |
83 | |
84 | /** | |
85 | * Checks if advice type is enabled (can be printed to the user). | |
86 | * Should be called before advise(). | |
87 | */ | |
88 | int advice_enabled(enum advice_type type); | |
89 | ||
90 | /** | |
91 | * Checks the visibility of the advice before printing. | |
92 | */ | |
927dc330 | 93 | __attribute__((format (printf, 2, 3))) |
b3b18d16 HW |
94 | void advise_if_enabled(enum advice_type type, const char *advice, ...); |
95 | ||
38ef61cf | 96 | int error_resolve_conflict(const char *me); |
55454427 | 97 | void NORETURN die_resolve_conflict(const char *me); |
4a4cf9e8 | 98 | void NORETURN die_conclude_merge(void); |
a20f7047 | 99 | void advise_on_updating_sparse_paths(struct string_list *pathspec_list); |
2857093b | 100 | void detach_advice(const char *new_name); |
d38a30df | 101 | |
75194438 | 102 | #endif /* ADVICE_H */ |