리뷰어가 PR에 "Any update on this?"라고 물었다. 지적받은 부분은 어제 저녁에 고쳐서 푸시해 두었다. 한국어로는 "어제 고쳤어요, 다시 봐 주세요"다. 고친 것도, 푸시한 것도 지나간 일이니 영어로도 과거형(past simple)을 쓰면 될 것 같다. 그런데 영어에는 지난 일을 말하는 형태가 둘 있다.
이 장에서 쓰는 문법 용어| 용어 | 뜻 |
|---|---|
| 과거형(past simple) | 지난 일을 말하는 동사 꼴. 규칙 동사는 기본 꼴에 -ed를 붙인다(fix → fixed). 예: The build failed. |
| 과거분사(past participle) | 동사의 세 번째 꼴. 규칙 동사는 과거형과 같고(fixed), 불규칙 동사는 따로 있다(do → did → done). 예: The review is done. |
| 현재완료(present perfect) | have/has + 과거분사. 지난 일이 지금과 이어져 있을 때, 특히 그 결과가 지금 남아 있을 때 쓴다. 예: I've pushed the fix. |
리뷰어에게 보낼 답장으로 문법이 맞는 것은?
규칙: 결과가 지금 남아 있나, 때를 말하나
A. 지난 일인데 그 결과가 지금 남아 있으면 현재완료, 곧 have + 과거분사(past participle)를 쓴다. 고쳐 놔서 지금 리뷰할 수 있다, 머지돼서 지금 main에 있다처럼 지금 상황을 알리는 말이다(British Council: Present perfect).
I've pushed the fix.(지금 브랜치에 있으니 보면 된다)The PR has been merged.(지금 main에 들어가 있다)I've added a test for the empty case.
B. 언제 했는지 말하면 과거형을 쓴다. yesterday, last week, an hour ago, on Monday, at 14:02처럼 끝난 때가 붙으면 현재완료가 아니라 과거형이다. 같은 문서가 "언제 일어났는지 말하면 과거형을 쓴다"고 설명한다.
I pushed the fix an hour ago.The deploy failed at 14:02.
C. just, already, yet은 현재완료와 자주 같이 쓴다. just는 '조금 전에', already는 '이미(지금보다 앞서)', yet은 '지금까지'라는 뜻이다. yet은 주로 부정문(negative)과 의문문(question)에 쓴다(British Council: just, yet, still, already).
I've just merged it.Has it been deployed yet?/It hasn't been deployed yet.
미국 영어에서는 I already merged it., Did you merge it yet?처럼 already나 yet과 함께 과거형을 쓰는 일도 흔하다(Cambridge: Present perfect simple). 동료가 그렇게 써도 틀린 것이 아니다. 다만 B처럼 끝난 때를 직접 말하는 표현(yesterday, ago)과 현재완료를 같이 쓰는 것은 미국 영어든 영국 영어든 틀린다.
표현: 상태 보고와 장애 보고
글의 종류에 따라 주로 쓰는 시제(tense)가 대개 정해진다.
| 글 | 주로 쓰는 시제 | 예 |
|---|---|---|
| 리뷰 반영 알림 | 현재완료 | I've addressed your comments. |
| 진행 상황 업데이트 | 현재완료 + yet | The fix has been merged but hasn't been deployed yet. |
| 이슈 종료 코멘트 | 현재완료 | This has been fixed in #123. |
| 장애 보고의 타임라인 | 과거형 | At 14:02, error rates spiked. At 14:10, we rolled back the deploy. (roll back: 이전 버전으로 되돌리다) |
| 원인 설명 | 과거형 | The cache key didn't include the locale. |
장애 보고서는 대개 "현재 상태"를 현재완료로 먼저 한 줄 쓰고(The issue has been resolved.), 그 아래 타임라인과 원인은 과거형으로 쓴다. 시간이 붙은 사실을 늘어놓는 부분이라서다.
I've fixed it, 언제 했는지가 붙으면 I fixed it yesterday를 씁니다.I have fixed it yesterday처럼 현재완료에 끝난 때를 붙이기 쉽습니다. 때를 붙이는 순간 과거형으로 바꿉니다.함정 찾기: AI가 다듬어 준 상태 업데이트
결제 버그 진행 상황을 팀 채널에 올릴 영어 업데이트로 다듬어 줘.
의심스러운 줄을 모두 눌러 표시한 뒤 “검토 끝”을 누르세요. 함정은 2개입니다.
연습
1. 리뷰 코멘트를 모두 반영하고 방금 푸시했다. 리뷰어에게 남길 말은?
2. 장애 보고서 타임라인:
"At 09:15, the payment service ___ responding."
3. 아직 배포 전인지 물을 때:
"Has the hotfix been deployed ___?"