* do explicit pull before committing to prevent conflicts