code: func (g *Git) PushPull(ctx context.Context, op, remote, branch string) error {
  	if err := g.Pull(ctx, remote, branch); err != nil {
  		if op == "pull" {
  			return err
  		}
  		out.Yellow(ctx, "Failed to pull before git push: %s", err)
  	}
  
  	if op == "pull" {
  		return nil
  	}
  	return g.Push(ctx, remote, branch)
  }
docs: // PushPull will first pull from the remote and then push any changes