From: Junio C Hamano Date: Tue, 26 May 2015 20:24:43 +0000 (-0700) Subject: Merge branch 'pt/pull-ff-vs-merge-ff' X-Git-Tag: v2.5.0-rc0~76 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/22a1ae6ef2ba77a20113bbee6f706ec47e6440c5?ds=inline;hp=-c Merge branch 'pt/pull-ff-vs-merge-ff' The pull.ff configuration was supposed to override the merge.ff configuration, but it didn't. * pt/pull-ff-vs-merge-ff: pull: parse pull.ff as a bool or string pull: make pull.ff=true override merge.ff --- 22a1ae6ef2ba77a20113bbee6f706ec47e6440c5 diff --combined Documentation/config.txt index 0f668bbe11,f45bef13ae..5f76e8cf4e --- a/Documentation/config.txt +++ b/Documentation/config.txt @@@ -453,8 -453,6 +453,8 @@@ false), while all other repositories ar core.worktree:: Set the path to the root of the working tree. + If GIT_COMMON_DIR environment variable is set, core.worktree + is ignored and not used for determining the root of working tree. This can be overridden by the GIT_WORK_TREE environment variable and the '--work-tree' command-line option. The value can be an absolute path or relative to the path to @@@ -624,12 -622,6 +624,12 @@@ core.commentChar: If set to "auto", `git-commit` would select a character that is not the beginning character of any line in existing commit messages. +core.packedRefsTimeout:: + The length of time, in milliseconds, to retry when trying to + lock the `packed-refs` file. Value 0 means not to retry at + all; -1 means to try indefinitely. Default is 1000 (i.e., + retry for 1 second). + sequence.editor:: Text editor used by `git rebase -i` for editing the rebase instruction file. The value is meant to be interpreted by the shell when it is used. @@@ -1282,13 -1274,6 +1282,13 @@@ gc.pruneExpire: "now" may be used to disable this grace period and always prune unreachable objects immediately. +gc.pruneWorktreesExpire:: + When 'git gc' is run, it will call + 'prune --worktrees --expire 3.months.ago'. + Override the grace period with this config variable. The value + "now" may be used to disable the grace period and prune + $GIT_DIR/worktrees immediately. + gc.reflogExpire:: gc..reflogExpire:: 'git reflog expire' removes reflog entries older than @@@ -1575,19 -1560,6 +1575,19 @@@ http.saveCookies: If set, store cookies received during requests to the file specified by http.cookieFile. Has no effect if http.cookieFile is unset. +http.sslCipherList:: + A list of SSL ciphers to use when negotiating an SSL connection. + The available ciphers depend on whether libcurl was built against + NSS or OpenSSL and the particular configuration of the crypto + library in use. Internally this sets the 'CURLOPT_SSL_CIPHER_LIST' + option; see the libcurl documentation for more details on the format + of this list. ++ +Can be overridden by the 'GIT_SSL_CIPHER_LIST' environment variable. +To force git to use libcurl's default cipher list and ignore any +explicit http.sslCipherList option, set 'GIT_SSL_CIPHER_LIST' to the +empty string. + http.sslVerify:: Whether to verify the SSL certificate when fetching or pushing over HTTPS. Can be overridden by the 'GIT_SSL_NO_VERIFY' environment @@@ -2061,7 -2033,7 +2061,7 @@@ pull.ff: a case (equivalent to giving the `--no-ff` option from the command line). When set to `only`, only such fast-forward merges are allowed (equivalent to giving the `--ff-only` option from the - command line). + command line). This setting overrides `merge.ff` when pulling. pull.rebase:: When true, rebase branches on top of the fetched branch, instead @@@ -2298,18 -2270,18 +2298,18 @@@ remote..skipFetchAll: remote..receivepack:: The default program to execute on the remote side when pushing. See - option \--receive-pack of linkgit:git-push[1]. + option --receive-pack of linkgit:git-push[1]. remote..uploadpack:: The default program to execute on the remote side when fetching. See - option \--upload-pack of linkgit:git-fetch-pack[1]. + option --upload-pack of linkgit:git-fetch-pack[1]. remote..tagOpt:: - Setting this value to \--no-tags disables automatic tag following when - fetching from remote . Setting it to \--tags will fetch every + Setting this value to --no-tags disables automatic tag following when + fetching from remote . Setting it to --tags will fetch every tag from remote , even if they are not reachable from remote branch heads. Passing these flags directly to linkgit:git-fetch[1] can - override this setting. See options \--tags and \--no-tags of + override this setting. See options --tags and --no-tags of linkgit:git-fetch[1]. remote..vcs:: diff --combined git-pull.sh index b8ae005920,09f6beabdc..0917d0d056 --- a/git-pull.sh +++ b/git-pull.sh @@@ -54,8 -54,11 +54,11 @@@ the fi # Setup default fast-forward options via `pull.ff` - pull_ff=$(git config pull.ff) + pull_ff=$(bool_or_string_config pull.ff) case "$pull_ff" in + true) + no_ff=--ff + ;; false) no_ff=--no-ff ;; @@@ -81,8 -84,8 +84,8 @@@ d diffstat=--no-stat ;; --stat|--summary) diffstat=--stat ;; - --log|--no-log) - log_arg=$1 ;; + --log|--log=*|--no-log) + log_arg="$1" ;; --no-c|--no-co|--no-com|--no-comm|--no-commi|--no-commit) no_commit=--no-commit ;; --c|--co|--com|--comm|--commi|--commit) @@@ -190,6 -193,15 +193,6 @@@ esa error_on_no_merge_candidates () { exec >&2 - for opt - do - case "$opt" in - -t|--t|--ta|--tag|--tags) - echo "It doesn't make sense to pull all tags; you probably meant:" - echo " git fetch --tags" - exit 1 - esac - done if test true = "$rebase" then @@@ -231,7 -243,7 +234,7 @@@ test true = "$rebase" && if ! git rev-parse -q --verify HEAD >/dev/null then # On an unborn branch - if test -f "$GIT_DIR/index" + if test -f "$(git rev-parse --git-path index)" then die "$(gettext "updating an unborn branch with changes added to the index")" fi @@@ -314,6 -326,7 +317,6 @@@ the fi fi -merge_name=$(git fmt-merge-msg $log_arg <"$GIT_DIR/FETCH_HEAD") || exit case "$rebase" in true) eval="git-rebase $diffstat $strategy_args $merge_args $rebase_args $verbosity" @@@ -324,7 -337,7 +327,7 @@@ eval="git-merge $diffstat $no_commit $verify_signatures $edit $squash $no_ff $ff_only" eval="$eval $log_arg $strategy_args $merge_args $verbosity $progress" eval="$eval $gpg_sign_args" - eval="$eval \"\$merge_name\" HEAD $merge_head" + eval="$eval FETCH_HEAD" ;; esac eval "exec $eval"