> On Wed, Oct 09, 2019 at 09:13:56AM +0300, Uwe Brauer wrote:
>> Could you please try out
>> git clone https://git.code.sf.net/p/matlab-emacs/src matlab-emacs-hg
> This repository contains two branches: 'master' and 'strings'. From
> these two 'master' is the default branch, so that is that 'git clone'
> will check out for you; note the '*' in front of 'master':
Ok hg does the same, so I see the difference is in the git log --graph command.
> $ git branch --all
> * master
> remotes/origin/HEAD -> origin/master
> remotes/origin/master
> remotes/origin/strings
>> Then you will see
>>
>> That
>> git log --graph
>> and
>>
>> git log --graph --all
>>
>> Are giving two different results and I don't understand why the branch
>> is not shown when using
>>
>> git log --graph
> Without any ref parameter 'git log' shows the history starting at the
> currently checked out commit (in this respect it behaves the same way
> as 'hg log'), so it only shows the history of 'master'. 'git log
> --all' means "show the history of all refs in the repository", so it
> shows the history of the remote branch 'strings' as well.
This is the difference, hg log -G always show all the commit starting with tip (basically the same as HEAD), the behavior you described would be
hg log -G --follow
> As far as I can tell all Git commands above behave as they should.
>> Funny thing is when I use the hg-git plugin and run
>>
>> hg clone https://git.code.sf.net/p/matlab-emacs/src matlab-emacs-hg
>>
>> I see this branch, converted to a hg bookmark.
> For some reason after cloning that repository with Mercurial and its
> hg-git plugin it checks out the 'strings' branch:
> $ hg bookmarks
> master 170:6c03da83e522
> * strings 195:b2396f3ceca3
> Consequently, when you run 'hg log' without a branch/bookmark/whatever
> parameter it shows the history of the 'strings' branch.
> I'm not sure what to think about 'hg clone' checking out a branch
> other than the default branch. In Git this would definitely be a bug.
> In Mercurial, I don't know; given my limited experience I don't want
> to outright call it a bug. I think it would be worth reporting it to
> the 'hg-git' project.
No I think the point is not the checkout the point is the hg log -G command.
I am now not so sure that really the strings branch/bookmark was checked out I rather think not.
> Anyway, in your first email you asked how you can merge that branch
> into 'master'. The command 'git merge origin/strings' will "merge" it
> without actually creating a merge commit, because 'strings' builds
> entirely on top of 'master'; this is what Git calls a "fast-forward
> merge". If you do want a merge commit, then run 'git merge --no-ff
> origin/strings'.
As this is what I was looking for. I actually don't like fast forward, so I would use the --no-ff option.
That was very helpful, thanks
Uwe