Madison Bumgarner drove in two runs and struck out nine in seven innings, and the San Francisco Giants overcame an embarrassing lineup mistake to beat the Los Angeles Dodgers 4-2 on Saturday night.