git_checkout_notify_t

Checkout notification flags

Checkout will invoke an options notification callback (notify_cb) for certain cases - you pick which ones via notify_flags:

- GIT_CHECKOUT_NOTIFY_CONFLICT invokes checkout on conflicting paths.

- GIT_CHECKOUT_NOTIFY_DIRTY notifies about "dirty" files, i.e. those that do not need an update but no longer match the baseline. Core git displays these files when checkout runs, but won't stop the checkout.

- GIT_CHECKOUT_NOTIFY_UPDATED sends notification for any file changed.

- GIT_CHECKOUT_NOTIFY_UNTRACKED notifies about untracked files.

- GIT_CHECKOUT_NOTIFY_IGNORED notifies about ignored files.

Returning a non-zero value from this callback will cancel the checkout. The non-zero return value will be propagated back and returned by the git_checkout_... call.

Notification callbacks are made prior to modifying any files on disk, so canceling on any notification will still happen prior to any files being modified.

Values

ValueMeaning
GIT_CHECKOUT_NOTIFY_NONE0
GIT_CHECKOUT_NOTIFY_CONFLICT1u << 0
GIT_CHECKOUT_NOTIFY_DIRTY1u << 1
GIT_CHECKOUT_NOTIFY_UPDATED1u << 2
GIT_CHECKOUT_NOTIFY_UNTRACKED1u << 3
GIT_CHECKOUT_NOTIFY_IGNORED1u << 4
GIT_CHECKOUT_NOTIFY_ALL0x0FFFFu

Meta