-
Notifications
You must be signed in to change notification settings - Fork 11
Reference: Configuration
A remote repo different from .origin. can be specified in the config file:
$ git config gitflow.origin myorigin
With git you can set environment variables to change the default behavior of git. You can set these environment variables just for git-flow.
These environment variables can be set in the file .gitflow_export in your
home directory.
Example of a .gitflow_export file:
export GIT_MERGE_AUTOEDIT=no
- Starting a hotfix, support, or release branch with a dirty tree.
By default you can not start one when your working tree is dirty. You can change this behavior by setting the following configuration.
git config --bool --set gitflow.allowdirty
This can be set like any other git configuration, global, system, or local.
The configuration variables are named as follows:
gitflow.<command>.<subcommand>.<flags>
All variables should be in lower caps.
If the variable is a boolean the following values are valid, the case does not matter:
- Y
- YES
- T
- TRUE
- N
- NO
- F
- FALSE
If the variable represents a string surround the value with double quotes.
This is an overview per command of configuration variables you can set. The list
is in the form variable - flag - valid value
For reading improvement the prefix gitflow. is not shown here but should
be used when you set the variable.
bugfix.start.fetch - fetch - boolean
bugfix.finish.fetch - fetch - boolean
bugfix.finish.rebase - rebase - boolean
bugfix.finish.preserve-merges - preserve-merges - boolean
bugfix.finish.push - push - boolean
bugfix.finish.keep - keep - boolean
bugfix.finish.keepremote - keepremote - boolean
bugfix.finish.keeplocal - keeplocal - boolean
bugfix.finish.force-delete - force_delete - boolean
bugfix.finish.squash - squash - boolean
bugfix.finish.squash-info - squash-info - boolean
bugfix.finish.no-ff - no-ff - boolean
bugfix.rebase.interactive - interactive - boolean
bugfix.rebase.preserve-merges - preserve-merges - boolean
bugfix.delete.force - force - boolean
bugfix.delete.remote - remote - boolean
feature.start.fetch - fetch - boolean
feature.finish.fetch - fetch - boolean
feature.finish.rebase - rebase - boolean
feature.finish.preserve-merges - preserve-merges - boolean
feature.finish.push - push - boolean
feature.finish.keep - keep - boolean
feature.finish.keepremote - keepremote - boolean
feature.finish.keeplocal - keeplocal - boolean
feature.finish.force-delete - force_delete - boolean
feature.finish.squash - squash - boolean
feature.finish.squash-info - squash-info - boolean
feature.finish.no-ff - no-ff - boolean
feature.rebase.interactive - interactive - boolean
feature.rebase.preserve-merges - preserve-merges - boolean
feature.delete.force - force - boolean
feature.delete.remote - remote - boolean
hotfix.start.fetch - fetch - boolean
hotfix.finish.fetch - fetch - boolean
hotfix.finish.sign - sign - boolean
hotfix.finish.push - push - boolean
hotfix.finish.keep - keep - boolean
hotfix.finish.keepremote - keepremote - boolean
hotfix.finish.keeplocal - keeplocal - boolean
hotfix.finish.force-delete - force-delete - boolean
hotfix.finish.notag - notag - boolean
hotfix.finish.nobackmerge - nobackmerge - boolean
hotfix.finish.signingkey - signingkey - string
hotfix.finish.message - message - string
hotfix.finish.messagefile - messagefile - string
hotfix.rebase.interactive - interactive - boolean
hotfix.rebase.preserve-merges - preserve-merges - boolean
hotfix.delete.force - force - boolean
init.defaults - defaults - boolean
release.start.fetch - fetch - boolean
release.finish.fetch - fetch - boolean
release.finish.sign - sign - boolean
release.finish.push - push - boolean
release.finish.keep - keep - boolean
release.finish.keepremote - keepremote - boolean
release.finish.keeplocal - keeplocal - boolean
release.finish.force-delete - force-delete - boolean
release.finish.notag - notag - boolean
release.finish.nobackmerge - nobackmerge - boolean
release.finish.squash - squash - boolean
release.finish.squash-info - squash-info - boolean
release.finish.signingkey - signingkey - string
release.finish.message - message - string
release.finish.messagefile - messagefile - string
release.branch.fetch - fetch - boolean
release.branch.sign - sign - boolean
release.branch.push - push - boolean
release.branch.notag - notag - boolean
release.branch.squash - squash - boolean
release.branch.squash-info - squash-info - boolean
release.branch.signingkey - signingkey - string
release.branch.message - message - string
release.branch.messagefile - messagefile - string
release.rebase.interactive - interactive - boolean
release.rebase.preserve-merges - preserve-merges - boolean
release.delete.fetch - fetch - boolean
release.delete.remote - remote - boolean
support.start.fetch - fetch - boolean
support.rebase.interactive - interactive - boolean
support.rebase.preserve-merges - preserve-merges - boolean
You can set these variables using the git config command
git config gitflow.release.finish.fetch yes
gitflow follows the same pattern for reading the options as git config.
You can use the options --system, --global, --local to write to that
location and gitflow will behave similar in reading the configuration as git.