Re: git pull bug report

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sure, if you insist:
```
 I  ~/c/database-sandbox main ↑1 ❱ git fetch
 I  ~/c/database-sandbox main ↑1 3.3s ❱ git log --graph --oneline
--decorate main github/main -n 3
* b73d3e1 (HEAD -> main) init activity api
* d370bf2 (github/main) refactor partitioning migration
* 5124511 wip pg
 I  ~/c/database-sandbox main ↑1 ❱ git status
On branch main
Your branch is ahead of 'github/main' by 1 commit.
  (use "git push" to publish your local commits)

nothing to commit, working tree clean
 I  ~/c/database-sandbox main ↑1 ❱
```

I did some more investigation:

```
 I  ~/c/database-sandbox main ↑1 ❱ git pull --ff-only
fatal: Not possible to fast-forward, aborting.
 I  ~/c/database-sandbox main ↑1 3.4s [128] git pull --ff
Already up to date.
 I  ~/c/database-sandbox main ↑1 3.3s ❱ git pull
hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint:
hint:   git config pull.rebase false  # merge (the default strategy)
hint:   git config pull.rebase true   # rebase
hint:   git config pull.ff only       # fast-forward only
hint:
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.
fatal: Need to specify how to reconcile divergent branches.
 I  ~/c/database-sandbox main ↑1 3.3s [128]
```

As you can see above:
- `pull --ff-only` aborts with "Not possible to fast-forward" error
- `pull --ff` succeeds with "Already up to date."
- `pull` only (unspecified `--ff`) aborts with "divergent branches"

The --ff-only case was recently fixed by
https://github.com/git/git/commit/361cb52383fb986f76a34506bdec9a1dd11133f0

The unspecified `--ff` is the bug that I encounter and I have started
a fix here: https://github.com/git/git/compare/master...erwinv:master

Best regards,
Erwin

On Tue, Nov 16, 2021 at 1:15 AM Bryan Turner <bturner@xxxxxxxxxxxxx> wrote:
>
> On Mon, Nov 15, 2021 at 1:40 AM Erwin Villejo <erwinvillejo@xxxxxxxxx> wrote:
> >
> > $ git log main github/main --graph --decorate -n 3
> > * commit b73d3e132f9638afbf5b98b0c278ed6b93a3ae50 (HEAD -> main)
> > | Author: Erwin Villejo <erwin.villejo@xxxxxxxxx>
> > | Date:   Mon Nov 15 15:22:53 2021 +0700
> > |
> > |     init activity api
> > |
> > * commit d370bf256a756a777c14609c8ad4184aa7e9e60f (github/main)
> > | Author: Erwin Villejo <erwin.villejo@xxxxxxxxx>
> > | Date:   Sat Nov 13 19:18:45 2021 +0700
> > |
> > |     refactor partitioning migration
> > |
> > * commit 5124511d287f1a6c384ff9766fdcc0e3e07043e8
> > | Author: Erwin Villejo <erwin.villejo@xxxxxxxxx>
> > | Date:   Mon Nov 8 17:24:19 2021 +0700
> > |
> > |     wip pg
> >
> > $ git remote -v
> > github    git@xxxxxxxxxx:erwinv/database-sandbox.git (fetch)
> > github    git@xxxxxxxxxx:erwinv/database-sandbox.git (push)
> >
> > Link to the [upstream branch on
> > GitHub](https://github.com/erwinv/database-sandbox/commits/main) so
> > you could see for yourself that my local is ahead of upstream and that
> > the upstream has no commits ahead of local.
>
> Certainly looks "ahead". There _has_ been at least one confirmed bug
> in 2.33 related to how "ahead" is handled[1], but it doesn't seem like
> it's related to what you're seeing here. The "git pull" output
> suggests you don't have "pull.ff=only" set.
>
> Are you able to pull down either Git 2.32 or the just-released Git
> 2.34 and try one of those?
> My suggestion to try "git fetch" could still also be useful, to see if
> your "git status" output changes.
>
> [1] https://lore.kernel.org/git/CH2PR06MB650424B4205102AC6A48F489B1BD9@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
>
> >
> > Best regards,
> > Erwin
> >
> >
> > On Mon, Nov 15, 2021 at 4:19 PM Erwin Villejo <erwinvillejo@xxxxxxxxx> wrote:
> > >
> > > > the remote mainline have three commits ahead
> > > Where did you get this info? This is not true in my case.
> > >
> > > * local is ahead of upstream. confirmed by `git status`:
> > >
> > > ```
> > > $ git status
> > > On branch main
> > > Your branch is ahead of 'github/main' by 1 commit.
> > >   (use "git push" to publish your local commits)
> > > ```
> > >
> > > If remote was ahead, `git status` would say so. And this is my
> > > personal repo in GitHub with only me as the sole developer/contributor
> > > so I can assure you that the upstream has no commits ahead of my
> > > local.
> > >
> > > Best regards,
> > > Erwin
> > >
> > > On Mon, Nov 15, 2021 at 4:12 PM Bagas Sanjaya <bagasdotme@xxxxxxxxx> wrote:
> > > >
> > > > On 15/11/21 15.56, Erwin Villejo wrote:
> > > > > There is nothing to reconcile since the branches have not diverged:
> > > > > local is ahead of upstream. So I think it is a bug, no?
> > > >
> > > > You have the situation like:
> > > >
> > > > ---o---a (your mainline)
> > > >     \
> > > >      b---c---d (remote mainline)
> > > >
> > > > Your mainline only have one commit ahead of base point `o`, while the remote
> > > > mainline have three commits ahead of `o` but unrelated. In this sense, your and
> > > > remote mainline is divergent - you need to either merge or rebase.
> > > >
> > > > Next time, keep your mainline pristine (don't commit any local changes on it,
> > > > instead branch to the topic branch and commit there).
> > > >
> > > > --
> > > > An old man doll... just what I always wanted! - Clara




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux