* I'm trying to break "git pull --rebase"
@ 2018-02-20 22:00 Julius Musseau
2018-02-20 22:08 ` Stefan Beller
2018-02-20 22:21 ` Martin Langhoff
0 siblings, 2 replies; 3+ messages in thread
From: Julius Musseau @ 2018-02-20 22:00 UTC (permalink / raw)
To: git
Hi, Git Developers,
I'm currently writing a blog post about "git pull --rebase". The
point of the blog post is to examine scenarios where two people are
working together on a short-lived feature branch, where history
rewrites are allowed, and where both are using "git pull --rebase" to
stay in sync with each other.
I was hoping to concoct a situation where "git pull --rebase" makes a
mess of things.
So far I have been unable to do this. I tried version v1.7.2 of Git
as well as version v2.14.1, and as far as I can tell, "git pull
--rebase" is bulletproof.
Does anyone here happen to know a situation where "git pull --rebase"
makes a mess?
Here's a draft of the blog post:
Title: "(Too much) fun with git pull --rebase"
https://mergebase.com/doing-git-wrong/2018/02/17/fun-with-git-pull-rebase/
Here are the "git pull --rebase" scenarios I've tested so far:
1. origin/feature rebased against origin/master
2. origin/feature squash-merged against origin/master
3. origin/feature squashed in-place`
4. origin/feature dropped a commit
5. origin/feature insanity (adjusted merge-base, reversed commits,
squashed some commits)
6. undo of 5
So far "git pull --rebase" does the exact right thing in every case!
If anyone knows a scenario where "git pull --rebase" fails to do the
right thing, I would be very grateful to hear of it.
Thanks!
yours sincerely,
Julius Musseau
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: I'm trying to break "git pull --rebase"
2018-02-20 22:00 I'm trying to break "git pull --rebase" Julius Musseau
@ 2018-02-20 22:08 ` Stefan Beller
2018-02-20 22:21 ` Martin Langhoff
1 sibling, 0 replies; 3+ messages in thread
From: Stefan Beller @ 2018-02-20 22:08 UTC (permalink / raw)
To: Julius Musseau; +Cc: git
On Tue, Feb 20, 2018 at 2:00 PM, Julius Musseau <julius@mergebase.com> wrote:
> Hi, Git Developers,
>
> I'm currently writing a blog post about "git pull --rebase". The
> point of the blog post is to examine scenarios where two people are
> working together on a short-lived feature branch, where history
> rewrites are allowed, and where both are using "git pull --rebase" to
> stay in sync with each other.
>
> I was hoping to concoct a situation where "git pull --rebase" makes a
> mess of things.
>
> So far I have been unable to do this. I tried version v1.7.2 of Git
> as well as version v2.14.1, and as far as I can tell, "git pull
> --rebase" is bulletproof.
>
> Does anyone here happen to know a situation where "git pull --rebase"
> makes a mess?
If you are inclined to experiment with submodules,
I would have an easy answer for you. :)
But instead of giving an answer myself (as I love reading about
things the usual mailing list folks miss),
maybe this is a good starting point to poke at things
https://github.com/git/git/commit/a6d7eb2c7a6a402a938824bcf1c5f331dd1a06bb
For the non-submodule use case, I would think pull is pretty solid,
as you lay out in your blog draft.
(If you finish by Wednesday 21st), you may be interested in
submitting to Git rev-news (or a later edition if you take time writing)
https://public-inbox.org/git/CAP8UFD1HPruE3N_0k8_TFreBML9V8K=SS8LqD-XkeEuheSmGvw@mail.gmail.com/
Thanks,
Stefan
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: I'm trying to break "git pull --rebase"
2018-02-20 22:00 I'm trying to break "git pull --rebase" Julius Musseau
2018-02-20 22:08 ` Stefan Beller
@ 2018-02-20 22:21 ` Martin Langhoff
1 sibling, 0 replies; 3+ messages in thread
From: Martin Langhoff @ 2018-02-20 22:21 UTC (permalink / raw)
To: Julius Musseau; +Cc: Git Mailing List
On Tue, Feb 20, 2018 at 5:00 PM, Julius Musseau <julius@mergebase.com> wrote:
> I was hoping to concoct a situation where "git pull --rebase" makes a
> mess of things.
It breaks quite easily with some workflows. They are all in the "don't
do that" territory.
Open a long-lived feature-dev branch, work on it. Other folks are
working on master. Merge master into feature-dev. Make sure some
merges might need conflict resolution.
Reorg some code on master, move files around. Code some more on
feature-dev branch. Merge master into feature-dev; the merge machinery
will probably cope with the code move, file renames. If it doesn't,
resolve it by hand.
Let all that simmer for a little bit.
Then try to rebase.
"Doctor, it hurts when I rebase after merging with conflict resolution... "
cheers,
m
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-02-20 22:21 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-20 22:00 I'm trying to break "git pull --rebase" Julius Musseau
2018-02-20 22:08 ` Stefan Beller
2018-02-20 22:21 ` Martin Langhoff
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).