I samband med byggandet av Göteborgs centralstation och SJ:s bangård avtalades med Göteborgs stad om att anlägga en hamnbana längs med södra älvstranden. Den drogs direkt från SJ:s bangård förbi Lilla Bommen och Stenpiren (då Stora Bommen) fram till dåvarande Nya hamnen vid Pustervik.
Enligt avtalet skulle underarbetet för spåren i hamnen bekostas av Göteborgs stad och själva järnvägen bekostas av staten. Hamnbanan skulle vara järnvägens egendom med inlösningsrätt för staden. Några år senare utsträcktes hamnbanan västerut till Järnvågen mitt för nuvarande Järntorget.
Vid Bergslagsbanans tillkomst år 1877 sammanknöts dess godsbangård med den befintliga hamnbanan vid Lilla Bommen. Hamnspår drogs också från Bergslagernas järnvägars bangård till älvstranden, Gullbergs Strandgata, på Hultmans holme. Detta spårsystem, industrispåret till Marieholm samt spåren till Lärje oljehamn, kallades BJ hamnbana.
År 1891 kom staden och SJ överens om förlängning av SJ Hamnbana västerut till Sänkverket i Masthugget med kostnadernas fördelning på samma sätt som tidigare. I och med att staden anlade Stigbergskajen och fiskhamnen vid Vädersågen förlängdes banan till Fiskhamnen. Efter förhandlingar träffades år 1911 nytt avtal mellan staden och statens järnvägar ifråga om hamnbanespåren så att Göteborgs stad också skulle betala en del av själva järnvägsanläggandet och inte bara grundarbetet. I enlighet med detta avtal byggdes bangården vid Fiskhamnen.
Vagnrangeringen för SJ hamnbana söder om älven utfördes under en lång följd av år uteslutande på SJ:s bangård. Sedan Fiskhamnsbangården tillkommit flyttades växlingsarbetena delvis förlagda till denna. 1930 byggde en ny bangård på Gullbergsvass för de behov som fanns vid SJ hamnbana, den så kallade Skansbangården.
Skansbangården räknas som en del av hamnbanan, och kostnaderna för densamma har betalats av Göteborgs stad och SJ i enlighet med avtalet från 1911
Hamnbanan förlängdes efter 1932 från Fiskhamnsbangården ut till Carnegies bryggeri i Klippan.
Förutom godstrafik förekom under vissa perioder en del passagerartrafik på banan. Dels till färjorna som gick till London och dels till Amerikabåtarna.
På 1960-talet började järnvägstrafiken avvecklas i takt med att hamnen på södra älvstranden avvecklades. Kring 1970 lade järnvägen ner, spårförbindelserna mellan Gullbergsvass och Lilla Bommen bröts upp och med tiden anlades vägar och cykelbanor på det gamla järnvägsområdet. Oscarsleden från Masthuggskajen till Älvsborgsbron stod färdig 1974.