Dereck Rodriguez pitched seven innings of two-hit ball to continue his sparkling rookie season and the San Francisco Giants beat the Pittsburgh Pirates 4-3