[llvm-dev] I've intertwined two branches

Paul C. Anagnostopoulos via llvm-dev llvm-dev at lists.llvm.org
Thu Apr 8 10:10:38 PDT 2021


But two things are confusing. I only pushed the 'lists' branch, not the 
'assert' branch, yet both revisions are up on GitHub. I suppose I should 
be careful and say that if I pushed 'assert', I don't know how I did it.

Also, if you check the dates on the changed lines in the various files, 
they are dated April 5 for 'lists' and April 1 for 'assert'. But I 
amended the commit on the 'lists' branch today and then pushed it.

On 4/8/2021 1:00 PM, David Lloyd wrote:
> Branches are just a pointer to a commit ID.  This just means that your 
> local `main`, `lists`, and `assert` branches all point to the same 
> commit ID, which is OK.  Pushing one does not push the others.  When 
> you push a branch e.g. `lists` via `git push origin lists`, what you 
> are doing is telling the remote server "create or change the branch 
> (pointer) on your end called `lists` to refer to the same commit ID as 
> my local branch `lists`".  It also pushes the commits to the server 
> (but this is strictly additive - nothing is lost by this action).  No 
> other remote branches would be affected by this action.
>
> It's also possible to push a local branch to a remote branch with a 
> different name; e.g. `git push origin foo:bar` makes a branch called 
> `bar` on the remote side with the same commit ID as the branch called 
> `foo` on the local side.
>
> Overall I don't think you've broken anything, it's just that the log 
> output is not completely intuitive.  It's just listing all the branch 
> names that it knows of which happen to point to the corresponding 
> commit ID in the log.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210408/de24184a/attachment.html>


More information about the llvm-dev mailing list