Claude Code가 Swift 과제를 수정한 뒤 파일이 달라졌거나 실행되지 않습니다.
계속 수정을 요청하지 말고 프로젝트를 복사한 다음, 바뀐 파일과 차이를 확인하고 필요한 부분만 복구한 뒤 Xcode에서 다시 빌드하세요.
이 글은 Swift를 막 배우며 과제에 Claude Code를 사용한 학생과 초보자를 위한 안내입니다.
변경 사항을 확인하는 방법부터 Git이 없는 경우의 복구, Xcode 검증까지 차례로 살펴봅니다.
Claude Code가 Swift 과제를 망쳤을 때 먼저 할 일
우선 문제가 난 프로젝트에서 추가 편집을 멈춥니다. Claude Code에 이어서 고쳐 달라고 요청하면 최초 변경과 후속 변경이 섞여 원인을 찾기 어려워질 수 있습니다. Anthropic의 Claude Code 사용 안내와 명령줄 사용 설명은 도구 사용과 명령 실행 방식을 설명하지만, 생성된 변경이 과제 요구에 맞는지 보증하지는 않습니다.
먼저 Finder에서 프로젝트 폴더를 복사해 별도 위치에 보관합니다. 복사본에는 날짜나 “복구 작업용”처럼 구분하기 쉬운 이름을 붙이고, 원래 프로젝트는 그대로 둡니다. 문제가 무엇인지도 간단히 기록합니다.
- 파일 내용이 바뀌거나 새 파일이 생겼습니다.
- 빌드가 실패하거나 앱이 실행되지 않습니다.
- 실행 결과가 과제 예시와 달라졌습니다.
- 코드는 실행되지만 바뀐 내용을 이해하기 어렵습니다.
이런 기록은 나중에 복원 범위를 정하고, 문제가 코드인지 프로젝트 설정인지 구분하는 데 도움이 됩니다.
바뀐 파일과 코드 차이 확인
Claude Code가 Swift 프로젝트에서 무엇을 수정했는지 어떻게 찾나요? Git을 사용 중이라면 프로젝트 폴더에서 터미널을 열고 아래 명령으로 작업 상태를 확인합니다. Git 공식 문서의 상태 확인 명령은 추적 중인 변경과 새 파일을 살펴보는 기준을 제공합니다.
git status --short
출력은 다음처럼 보일 수 있습니다.
M Sources/ContentView.swift
?? Sources/Helper.swift
이 예시에서 M은 기존 파일이 수정됐음을, ??는 아직 Git이 추적하지 않는 파일임을 뜻합니다. 파일 이름만 보고 지우지 마세요. 새 파일이 과제에 필요한 코드일 수도 있습니다. 어떤 내용이 바뀌었는지는 차이도 확인해야 합니다.
git diff -- Sources/ContentView.swift
Git 차이 확인 문서에 나온 것처럼, 이 명령은 지정한 파일의 변경 내용을 비교하는 데 씁니다. +로 표시된 줄은 추가되거나 바뀐 내용이고, -로 표시된 줄은 이전 내용과 달라진 부분입니다. 전체 변경을 볼 때도 먼저 파일 목록을 확인하고, 과제와 관련된 파일을 하나씩 살펴보세요.
Git을 쓰지 않는 프로젝트라면 Finder에서 복사본과 수업 자료의 원본 또는 직접 만든 백업을 나란히 놓고 비교합니다. 원본이 없는 파일이나 출처를 모르는 파일은 일단 보존합니다. Claude Code가 과제 파일을 바꾼 뒤 원래 내용을 찾고 싶다면, 수업에서 배포한 원본 파일과 본인의 백업을 먼저 확인하고, 확인되지 않은 파일은 삭제하지 않는 편이 안전합니다.
Git 기록 유무에 따른 복구 방법
복구 방법은 이전 기록이 있는지에 따라 달라집니다. 아래에서 현재 상황에 맞는 항목을 고르세요.
| 선택지 | 확인할 내용 | 복구 판단 |
|---|---|---|
| Git 기록이 있고 아직 커밋하지 않음 | git status --short와 git diff -- 파일경로 |
차이를 읽고, 백업한 뒤 복원할 파일을 지정합니다. |
| Git 기록이 있고 이전 커밋이 있음 | git log -- 파일경로 |
필요한 이전 버전을 확인한 뒤 해당 파일만 복원합니다. |
| Git을 사용하지 않음 | 수업 원본, 별도 복사본, 개인 백업 | 비교해 확인된 내용만 옮기고, 출처가 불분명한 파일은 남겨 둡니다. |
Git 기록 없이 변경된 과제 파일을 복구하려면 어떻게 해야 하나요? 현재 프로젝트를 한 번 더 복사한 뒤, 수업에서 제공한 원본과 비교해 바뀐 파일만 골라 복원합니다. 원본과 현재 파일의 역할이 다르거나 파일 내용을 판단하기 어렵다면 덮어쓰지 말고 보존하세요. Git을 쓰지 않았다면 되돌릴 기록이 없을 수 있으므로, 무조건 복구된다고 단정할 수 없습니다.
Git에 아직 커밋하지 않은 변경을 되돌릴 때는 대상 파일과 차이를 확인하고, 별도 복사본을 만든 다음에만 복원 명령을 고려합니다. 아래 명령은 지정한 파일을 마지막 커밋의 상태로 되돌립니다. 따라서 해당 파일의 커밋 이후 변경을 잃을 수 있습니다. Git 공식 복원 명령 문서도 사용 전 대상과 복원 기준을 확인하도록 안내합니다.
git restore --source=HEAD -- Sources/ContentView.swift
Sources/ContentView.swift는 실제로 복원하려는 경로로 바꿔야 합니다. 파일 전체가 아니라 일부 줄만 되돌리고 싶다면, 이 명령을 바로 실행하지 마세요. 백업된 파일과 차이를 비교해 필요한 코드만 직접 옮기는 편이 낫습니다.
이미 커밋했던 내용을 찾아야 한다면 먼저 해당 파일의 기록을 살펴봅니다.
git log --oneline -- Sources/ContentView.swift
Git 기록 문서에 따라 관련 커밋을 확인한 다음, 원하는 시점의 커밋을 복원 기준으로 지정할 수 있습니다. 예를 들어 아래처럼 사용할 수 있지만, <커밋값>은 실제 기록에서 확인한 값으로 바꾸고 경로도 점검해야 합니다.
git restore --source=<커밋값> -- Sources/ContentView.swift
복원 명령을 실행하기 전에 작업 폴더와 수업 원본이 따로 보존됐는지 확인하세요. 어떤 파일을 바꾸는지 확실하지 않거나 작업 내용을 이해하지 못했다면, 명령을 실행하지 말고 파일을 더 확인하세요.
코드는 실행되지만 과제에 맞는지 모를 때
Claude Code가 바꾼 Swift 코드가 과제 요구에 맞는지 어떻게 판단하나요? 빌드 성공만으로는 충분하지 않습니다. 과제 설명에 적힌 기능, 제출할 파일과 폴더 구조, 입력과 출력 조건을 각각 확인합니다. 그런 다음 바뀐 코드를 작은 단위로 읽고, 각 부분이 어떤 역할을 하는지 본인 말로 설명할 수 있는지 살펴보세요.
Claude Code의 설명은 코드를 이해하는 데 참고할 수 있지만, 설명이 맞다는 증거나 채점 기준을 충족한다는 보증은 아닙니다. 이해되지 않는 변경은 그대로 제출하지 말고 수업 자료와 비교하거나 담당 교사에게 확인합니다. Swift 학생 과제의 백업과 버전 관리 안내도 다음 과제부터 변경을 추적하는 데 참고할 수 있습니다.
Xcode에서 다시 빌드하고 실행 확인
Claude Code가 수정한 뒤 Swift 프로젝트가 실행되지 않으면 어떻게 해야 하나요? 먼저 복구한 복사본을 Xcode에서 열고, 프로젝트가 선택한 기기나 실행 대상과 맞는지 확인한 다음 다시 빌드합니다. 오류가 나면 메시지 전체를 저장하세요. 첫 번째 오류뿐 아니라 뒤에 이어지는 메시지도 함께 있어야 원인을 좁히기 쉽습니다.
확인 순서는 다음과 같습니다.
- 코드 오류: 오류가 가리키는 파일과 줄을 열어 복구 전후의 차이를 확인합니다.
- 프로젝트 설정: 대상, 빌드 단계, 파일 포함 여부를 살펴봅니다. Apple의 빌드 단계 설정 설명은 대상의 빌드 단계가 어떻게 구성되는지 확인할 때 참고할 수 있습니다.
- Xcode와 시스템 조건: 사용 중인 환경이 요구 사항에 맞는지 Apple의 Xcode 시스템 요구 사항에서 확인합니다. Xcode의 기능과 프로젝트 빌드에 관한 공식 자료는 Apple Xcode 문서에서 살펴볼 수 있습니다.
오류 메시지만 보고 코드 전체를 다시 쓰지 마세요. 한 가지 변경을 적용한 뒤 같은 절차로 다시 빌드하면, 어느 변경이 결과에 영향을 줬는지 확인하기 쉽습니다. 수업 프로젝트의 구성이나 요구 사항이 불분명하다면 Xcode 프로젝트 문서와 수업 자료를 함께 확인하세요.
사용할 Mac이 없을 때 검증 환경 결정
과제에 macOS와 Xcode가 필요하다면, 수업에서 허용하는 환경인지 먼저 확인합니다. 학교에서 제공하는 Mac을 쓸 수 있는지, 제출 전까지 접근할 수 있는지 확인한 뒤 선택지를 비교하세요. Apple의 Xcode 시스템 요구 사항은 사용 환경이 맞는지 확인하는 기준입니다.
- 개인 Mac: 반복해서 과제를 하고 오랫동안 사용할 계획이라면 직접 소유하는 선택이 편할 수 있습니다. 구매 비용과 유지 관리가 부담인지 따져야 합니다.
- 학교의 Mac 환경: 학교가 허용하고 필요한 시간에 쓸 수 있다면 추가 장비를 마련하지 않아도 됩니다. 사용 가능 시간과 과제 파일을 보관할 방법을 먼저 확인하세요.
- 원격 Mac 사용: Mac을 바로 살 필요 없이 과제 환경을 잠시 확인하려는 경우 검토할 수 있습니다. 다만 네트워크 연결과 원격 조작 방식이 본인에게 맞는지, 수업의 보안 및 사용 규칙에 어긋나지 않는지 확인해야 합니다.
집에 있는 Windows 컴퓨터에 macOS 가상 환경을 급히 구성하는 방법은 Xcode 과제의 안정적인 대안이라고 단정하기 어렵습니다. 학교에서 허용하는 환경을 우선 확인하고, 실제 Mac이 필요한 과제라면 사용할 기간과 접근 조건을 비교하세요. 원격 환경을 고려한다면 Mac 사용 환경 선택 안내에서 선택 기준을 살펴볼 수 있습니다.
복구가 끝났다는 판단은 파일이 이전처럼 보여서가 아니라, 과제 요구를 확인하고 Xcode에서 빌드와 실행을 다시 마친 뒤 내려야 합니다. 개인 Mac을 자주 사용할 계획이라면 직접 소유하는 편이 나을 수 있지만, 과제나 환경 점검에만 잠시 필요하다면 구매 전 원격 사용을 검토할 수 있습니다. 원격 사용은 네트워크에 의존하고, 사용 시간과 과제 규칙도 확인해야 합니다. 이 조건이 맞는다면 NUMACS 시작 안내를 확인해 필요한 기간에만 사용할 수 있는지 살펴보세요.
NUMACS 클라우드 Mac
복구한 스위프트 과제를 안정적인 맥 환경에서 검증하세요
NUMACS의 전용 물리 맥을 원격으로 사용해 과제를 실행하고 빌드 결과를 확인하세요.
