개발·데이터

꼬인 깃 상태 되돌릴 명령어 받기

지금 상태를 알려 주고 안전한 명령만 확인한다

프롬프트 · 변수 2개

저는 깃(git)을 터미널 명령어로만 쓰고 있고, 지금 상태가 꼬여서 되돌리고 싶습니다. 무슨 일이 있었는지는 아래에 적었고, 지금 상태는 git status 결과를 그대로 붙여 두었습니다.

명령어를 알려 주기 전에, 잘못 실행하면 되돌릴 수 없는 부분이 있는지 확인이 필요하면 먼저 질문해 주세요. 질문은 최대 3개로 해 주세요. 특히 원격 저장소에 이미 올라간 커밋인지, 다른 사람이 같은 브랜치를 쓰고 있는지를 확인해 주세요.

답은 이 순서로 해 주세요. ① 지금 상태를 제 말이 아니라 git status 결과를 근거로 한 문단으로 다시 설명하고, 제가 잘못 이해한 부분이 있으면 짚어 주기 ② 실행할 명령을 한 줄씩, 각 줄 바로 아래에 그 명령이 무엇을 바꾸는지 한 문장 ③ 실행한 뒤 결과를 확인할 명령 ④ 원하는 대로 되지 않았을 때 되돌리는 방법.

이력이나 남의 작업을 지울 수 있는 명령은 다른 방법이 없을 때만 써 주시고, 쓸 경우에는 무엇이 사라지는지 먼저 경고해 주세요. 명령 여러 개를 한 줄에 이어 붙이지 말아 주세요. 제 상태에서 실제로 필요한 명령만 주시고, 참고용으로 다른 방법을 덧붙이지 말아 주세요.

상황 설명: """ {{상황 설명}} """

git status 결과: """ {{git status 결과}} """

복사한 뒤 여기에 붙여 넣으세요 · ChatGPT·Claude는 프롬프트를 실은 채 열립니다

왜 이렇게 쓰는가

이 프롬프트는 블록 6개로 짜여 있습니다
맥락 되묻기 형식 제약 입력 자료 상황 설명 입력 자료 +1 재료 할 일 결과물 재료

블록을 누르면 그 문단이 보입니다

맥락 재료 · AI가 알아야 할 것

저는 깃(git)을 터미널 명령어로만 쓰고 있고, 지금 상태가 꼬여서 되돌리고 싶습니다. 무슨 일이 있었는지는 아래에 적었고, 지금 상태는 git status 결과를 그대로 붙여 두었습니다.

맥락 제공 기법 보기
  • 재료 AI가 알아야 할 것 ×3
  • 할 일 무엇을 어떻게 할지 ×1
  • 결과물 어떤 모양으로 돌려받을지 ×2

git 명령어를 chatgpt 에 물을 때 가장 위험한 것은, 상태를 보여 주지 않은 채 "되돌려 줘" 라고만 하는 것입니다. AI는 가장 흔한 상황을 가정하고 답하는데, 그 가정에는 대개 강제 푸시나 하드 리셋이 들어 있습니다. 그대로 실행하면 아직 커밋하지 않은 수정이나 동료의 커밋이 조용히 사라집니다.

해설 더 읽기 · 3문단

맥락 을 두 조각으로 나눠 넣은 이유가 여기 있습니다. 사람이 쓴 상황 설명은 틀릴 수 있습니다. "브랜치를 판 줄 알았다" 는 말 자체가 이미 착각이니까요. 반면 git status 결과는 사실입니다. 두 가지를 함께 주고 출력 형식 의 ①번에서 "제 말이 아니라 status 결과를 근거로" 다시 설명하게 하면, 착각이 먼저 걸러집니다.

되묻기 문단이 안전장치의 절반을 담당합니다. 원격에 올라갔는지, 다른 사람이 같은 브랜치를 쓰는지에 따라 안전한 명령이 완전히 달라지는데, 이 정보는 status 결과만으로는 알 수 없습니다. 질문을 먼저 받으면 위험한 명령을 추천받을 일이 크게 줄어듭니다.

제약 의 세 줄은 각각 다른 사고를 막습니다. 경고 요구는 커밋 취소하는 법을 찾다가 이력을 날리는 일을, 한 줄에 이어 붙이지 말라는 요구는 앞 명령이 실패했는데 뒤 명령이 실행되는 일을, "참고용 다른 방법을 덧붙이지 말라" 는 요구는 여러 방법 중 아무거나 골라 섞어 쓰는 일을 막습니다. 붙여 넣는 자료를 """ 로 감싼 것은 로그에 섞인 커밋 메시지가 지시로 읽히지 않게 하기 위해서입니다.

용어가 낯설면 아하AI에서: prompt, hallucination

나쁜 예와 비교

나쁜 예에 없는 것: 되묻기 · 형식 · 제약
나쁜 예 20자 이 프롬프트 477자 맥락 되묻기 형식 제약 입력 자료 되묻기 · 빠짐 형식 · 빠짐 제약 · 빠짐
흔한 나쁜 예

git 커밋 3개 되돌리고 싶은데 명령어 알려줘

상태를 모르니 AI가 가장 일반적인 답, 즉 하드 리셋과 강제 푸시를 알려 줍니다. 커밋하지 않은 수정이 함께 날아가거나, 이미 원격에 올라간 커밋을 지워 동료의 저장소와 어긋납니다. 명령이 무엇을 바꾸는지 설명이 없어 실행한 뒤에도 무엇이 사라졌는지 모르고, 되돌리려고 또 검색한 명령을 치다 상태가 한 번 더 꼬입니다.

변형

1

충돌이 나서 멈췄을 때

충돌은 되돌리기보다 순서가 중요합니다. 그만두는 방법을 같이 받아 두면 중간에 더 꼬였을 때 빠져나올 수 있습니다.

프롬프트 보기

병합(merge) 도중 충돌이 나서 멈췄습니다. 상황은 아래와 같습니다. 충돌 표시가 있는 파일을 어떤 순서로 처리해야 하는지, 각 단계에서 무엇을 확인해야 하는지 알려 주세요. 지금 상태에서 그만두고 병합 전으로 돌아가는 방법도 함께 알려 주시고, 그때 무엇이 사라지는지 적어 주세요.

상황 설명: """ {{상황 설명}} """

git status 결과: """ {{git status 결과}} """

2

명령을 실행하기 전에 확인만 받고 싶을 때

어디선가 찾은 명령을 그대로 치기 전에 씁니다. 명령을 새로 받는 대신 검토만 맡기면 판단이 내 손에 남습니다.

프롬프트 보기

아래 상황에서 제가 실행하려는 명령이 안전한지 먼저 봐 주세요. 명령을 바꿔 주지 말고, 이 명령이 무엇을 바꾸는지 · 되돌릴 수 있는지 · 이 상황에서 위험한 점이 있는지만 알려 주세요. 위험하다면 무엇을 먼저 백업해야 하는지 알려 주세요.

상황 설명: """ {{상황 설명}} """

모델별 주의

명령을 실행하기 전에 작업 폴더를 통째로 복사해 두면 무엇이 잘못되어도 되돌릴 수 있습니다

마지막 수정 2026-09-02 · 잘못된 점이 있나요? 알려 주세요