I need help..

I have not talked to anyone about this ever.. I'm here to ask what I need to do! 
I have had a very rough childhood and a very bad relationship that I believe has made a huge impact on my life and I believe it's the reason why I am like this... 
Anyways when I get mad I'm alright but when they don't listen to me or laugh or walk away it makes me very angry. I say very bad things about them/ I will throw things and break things or something I am not proud of I will hit them.. I feel terrible after it happens and I get upset with myself. I don't wanna be this way, I have an amazing boyfriend and a beautiful daughter and another baby on the way. How do I fix my anger issue?