Ok, effectively, if the branch which is merged hasn't been pushed yet, it
might be a problem, in that special case the git pull --ff-only / git
rebase --preserve-merges origin/develop makes sense.
Thanks,
-Fred
-----Message d'origine-----
From: Dasa Paddock
Sent: Wednesday, March 20, 2013 7:43 PM
To: <dev@flex.apache.org>
Subject: Re: [3/3] git commit: Merge branch 'develop' of
https://git-wip-us.apache.org/repos/asf/flex-sdk into develop
Try:
Clone 1:
1- I checkout a new branch test1
2- I created a file test1.txt
3- I add/commit test1.txt
4- I checkout master
5- I merged --no-ff test1
Clone 2:
1- I created a file file1.txt
2- I add/commit file1.txt
3- I push
Clone 1:
1- I pull --rebase
Now Clone 1 would only have the commit to test1.txt. The merge commit
created by merge --no-ff test1 would be gone.
Hope this helps,
--Dasa
On Mar 20, 2013, at 11:25 AM, Frédéric THOMAS <webdoubl...@hotmail.com>
wrote:
The problem would be if you had first pushed clone 2 and then did the
pull --rebase in clone 1
But in this case I won't have and I don't want any merge commit at all in
clone 2 indeed, it's a single commit on the master, something should be
missed in that dicussion, could you provide me an example clearer than in
your link ?
Thanks,
-Fred
-----Message d'origine----- From: Dasa Paddock
Sent: Wednesday, March 20, 2013 7:16 PM
To: <dev@flex.apache.org>
Subject: Re: [3/3] git commit: Merge branch 'develop' of
https://git-wip-us.apache.org/repos/asf/flex-sdk into develop
The problem would be if you had first pushed clone 2 and then did the
pull --rebase in clone 1. For more info see:
http://notes.envato.com/developers/rebasing-merge-commits-in-git/
--Dasa
On Mar 20, 2013, at 11:11 AM, Frédéric THOMAS <webdoubl...@hotmail.com>
wrote:
Hi Dasa,
You could use "git pull --rebase" instead but this does not preserve
merge commits
I just did a test on my git lab, I've got a bare repo and 2 clones.
Clone 1:
1- I checkout a new branch test1
2- I created a file test1.txt
2- I add/commit test1.txt
3- I checkout master
4- I merged --no-ff test1
5- I deleted test1
6- I push
Clone 2:
1- I created a file file1.txt
2- I add/commit file1.txt
3- I pull --rebase
4- I push
Clone 1:
1- I pull --rebase
the git log on both clones shows the merge commit, it has been preserved,
so, I wonder what do you mean, did I miss something ?
Thanks,
-Fred
-----Message d'origine----- From: Dasa Paddock
Sent: Tuesday, March 19, 2013 8:12 PM
To: <dev@flex.apache.org>
Subject: Re: [3/3] git commit: Merge branch 'develop' of
https://git-wip-us.apache.org/repos/asf/flex-sdk into develop
Here's one way to avoid having "git pull" create a merge commit on your
develop branch. Checkout your develop branch and then run:
$ git pull --ff-only
If this give you an error it means you have commits on your develop
branch that are ahead of the remote develop branch. So then, run:
$ git rebase --preserve-merges origin/develop
This will rebase your commits on your local develop branch onto the
remote develop branch. (Use -p for short.)
You could use "git pull --rebase" instead but this does not preserve
merge commits, which is what I commonly have following the git flow
workflow. For more info on this, see:
http://notes.envato.com/developers/rebasing-merge-commits-in-git/
--Dasa
On Mar 19, 2013, at 11:39 AM, Frédéric THOMAS <webdoubl...@hotmail.com>
wrote:
This is the best explanation of when to merge vs. rebase that I've
seen:
http://blog.sourcetreeapp.com/2012/08/21/merge-or-rebase/
Added as comment to the wiki
-Fred
-----Message d'origine----- From: Frédéric THOMAS
Sent: Tuesday, March 19, 2013 7:23 PM
To: dev@flex.apache.org
Subject: Re: [3/3] git commit: Merge branch 'develop' of
https://git-wip-us.apache.org/repos/asf/flex-sdk into develop
Hi,
This document is perfect, the maybe only little point it didn't cover in
"Keeping the feature branch up to date" is the possibility interactively
rebase your commit, which allows in case of too much conflicts, to abord
it,
reset --hard and pull (fecth/merge).
Thanks for sharing,
-Fred
-----Message d'origine----- From: Dasa Paddock
Sent: Tuesday, March 19, 2013 6:57 PM
To: <dev@flex.apache.org>
Subject: Re: [3/3] git commit: Merge branch 'develop' of
https://git-wip-us.apache.org/repos/asf/flex-sdk into develop
This is the best explanation of when to merge vs. rebase that I've seen:
http://blog.sourcetreeapp.com/2012/08/21/merge-or-rebase/
There's also now a public beta of SourceTree for Windows available:
http://blog.sourcetreeapp.com/2013/03/19/introducing-sourcetree-for-windows-a-free-desktop-client-for-git/
In regards to these unwanted merges, I've seen GitHub for Windows do
this
automatically instead of giving an error when you click it's Sync button
and
your local develop branch has commits that have not been pushed yet but
the
remote also also has commits that are not yet on the local develop
branch.
--Dasa