# Git config pull

**URL:** <https://discourse.julialang.org/t/git-config-pull/49521>\
**Category:** Tooling\
**Tags:** question\
**Created:** [November 3, 2020, 1:01pm UTC](https://discourse.julialang.org/t/git-config-pull/49521 "2020-11-03T13:01:07Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [November 3, 2020, 1:01pm UTC](https://discourse.julialang.org/t/git-config-pull/49521/1 "2020-11-03T13:01:07Z")

</div>

After a recent update, `git pull` started printing

```bash
$ git pull [6b8ccff5]
warning: Pulling without specifying how to reconcile divergent branches is
discouraged. You can squelch this message by running one of the following
commands sometime before your next pull:

  git config pull.rebase false # merge (the default strategy)
  git config pull.rebase true # rebase
  git config pull.ff only # fast-forward only

You can replace "git config" with "git config --global" to set a default
preference for all repositories. You can also pass --rebase, --no-rebase,
or --ff-only on the command line to override the configured default per
invocation.

```

Which, if any, is the recommended configuration for Julia and the package ecosystem?

(Sorry if the question makes no sense. I tried reading up on this and found a lot of conflicting advice).

---

<div class="post-metadata">

**Author:** ![mauro3](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mauro3/32/292_2.png) [@mauro3](https://discourse.julialang.org/u/mauro3)\
**Post date:** [November 3, 2020, 2:56pm UTC](https://discourse.julialang.org/t/git-config-pull/49521/2 "2020-11-03T14:56:43Z")

</div>

I use `pull.ff only`. That way I don’t get the automatic, and I find annoying merges when pulling. Instead I have to be explicit about whether I want to merge or rebase. Often during package dev it is the latter. However, an automatic rebase I would find a bit dangerous.

---

<div class="post-metadata">

**Author:** ![eliassno](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/eliassno/32/18917_2.png) [@eliassno](https://discourse.julialang.org/u/eliassno)\
**Post date:** [November 3, 2020, 3:04pm UTC](https://discourse.julialang.org/t/git-config-pull/49521/3 "2020-11-03T15:04:11Z")

</div>

I don’t think I’ve relied on `git pull --rebase` before the the warning message was added in [version 2.27](https://github.com/git/git/commit/d18c950a69f3a24e1e3add3d9fc427641f53e12b).

There have been some occasions where I accidentally get merges during `pull`, where `pull --ff-only` would have been more appropriate. Luckily, this doesn’t happen frequently to me and I find the default strategy to be sufficient.

(I’ve started to appreciate [Oh Shit, Git!?!](https://ohshitgit.com/) when the default strategy “fails”)
