Blake Hoskins, of no fixed abode, caused life-changing injuries to George Maroty and also injured a 21-year-old woman, who needed treatment for pellet wounds.
The incident happened in Ringwood Crescent, Southmead, at 12:50am on Thursday, 18 June.
Hoskins admitted causing grievous bodily harm with intent, along with other charges of wounding, criminal damage, affray and a firearms offence.
He was jailed on Monday, November 30, at Bristol Crown Court.
Detective Inspector James Wasiak, of Avon and Somerset Police, said: “Our investigation found this serious incident was the culmination of a dispute between the two men about contact with an ex-partner. This escalated over the course of an evening.
“One man is in prison, another has suffered a life-changing injury and a young woman was needlessly hurt. None of this should ever have happened and today’s ruling shows that the courts take such tit-for-tat violence very seriously.”
The victim of Hoskins attack – George Maroty – appeared in court earlier this month and admitted affray and criminal damage, overnight between June 17 and June 18. He is due to be sentenced on December 23.