I have the following git structure :
[![enter image description here](https://i.stack.imgur.com/VpEEf.png)](https://i.stack.imgur.com/VpEEf.png)

The red branch is the main branch, then there is a multitude of smaller branch and commit.

I would like to do the following =>
[![enter image description here](https://i.stack.imgur.com/W1NIs.png)](https://i.stack.imgur.com/W1NIs.png)

Some of the commit on other branch ( not the red one) naming and stuff are not good.

I would like to merge a commit from the green branch, assign it a name like v0.1 and that this commit do not keep any track of previous commits.

It is like I am pushing all the stuff from scratch on the red branch without having edited it before. 

I know it is possible but I do not remember how.

Thanks