> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Git 재해 복구

> Replit의 자동 백업 시스템을 사용하여 Git 기록과 코드를 복구하는 방법을 알아보세요.

Replit은 손상된 `.git` 폴더나 커밋 기록 손실과 같은 문제로부터 복구하는 데 도움이 되도록 Git 저장소를 자동으로 백업합니다. 이 백업 시스템은 백그라운드에서 실행되므로 추가적인 노력 없이 작업이 보호됩니다.

## 작동 방식

모든 Replit 앱은 Git 저장소의 안전한 백업을 유지합니다. Replit 에이전트가 코드를 변경하거나 앱을 배포하면 자동으로 이 백업에 동기화됩니다. 로컬 Git 저장소가 손상되거나 사용할 수 없게 되면 백업에서 전체 커밋 기록을 복원할 수 있습니다.

<Info>
  백업 원격은 `gitsafe-backup`으로 명명되며 Replit이 자동으로 관리합니다. 아무것도 구성할 필요가 없습니다 — 이미 백그라운드에서 작동하고 있습니다.
</Info>

## 백업 기록 보기

커밋 기록을 보는 가장 쉬운 방법은 [Git 창](/references/workspace-tools/git-interface)을 통해서입니다. 프로젝트 편집기의 도구 섹션에서 열 수 있습니다 — 모든 에이전트 체크포인트를 포함한 전체 커밋 기록을 보여줍니다. 이것은 대부분의 경우에 작동하며 명령이 필요하지 않습니다.

gitsafe-backup 원격을 직접 검사해야 하는 경우 셸을 사용할 수 있습니다:

```bash theme={null}
git fetch gitsafe-backup main
git log gitsafe-backup/main
```

이를 통해 모든 에이전트 체크포인트와 수동 커밋을 포함한 완전한 커밋 기록을 볼 수 있습니다. 작업이 백업되었는지 확인하거나 복원할 특정 커밋을 찾는 데 사용할 수 있습니다.

## Git 문제로부터 복구

Git 오류가 발생하거나 저장소가 손상된 경우 [Git 창](/references/workspace-tools/git-interface)부터 시작하세요. 셸 명령 없이도 이전 커밋으로 재설정하거나 원격에서 가져오는 등 대부분의 일반적인 문제를 해결할 수 있습니다.

Git 창이 도움을 줄 수 없는 경우(완전히 손상된 `.git` 폴더 등)에는 아래의 셸 기반 단계를 사용하세요.

### 백업 가용성 확인

먼저 백업 원격이 존재하는지 확인하세요:

```bash theme={null}
git remote -v
```

출력에서 `gitsafe-backup`을 찾으세요. 있으면 복구를 진행할 수 있습니다.

### 저장소 복원

<Warning>
  이 프로세스는 현재 `.git` 폴더를 백업된 버전으로 교체합니다. 작업 파일은 변경되지 않지만 로컬 Git 기록은 백업으로 교체됩니다.
</Warning>

<Steps>
  <Step title="현재 Git 구성 저장">
    커스텀 설정이 있는 경우를 대비하여 Git 구성 파일을 백업하세요:

    ```bash theme={null}
    cp .git/config .git_config_backup
    ```
  </Step>

  <Step title="백업 저장소 복제">
    백업에서 임시 복제를 생성하세요:

    ```bash theme={null}
    git clone --bare git://gitsafe:5418/backup.git /tmp/gitsafe-restore
    ```
  </Step>

  <Step title="Git 폴더 교체">
    손상된 `.git` 폴더를 옆으로 이동하고 백업으로 교체하세요:

    ```bash theme={null}
    mv .git .git_corrupted_backup
    mv /tmp/gitsafe-restore/ .git
    ```
  </Step>

  <Step title="구성 복원">
    Git 구성을 다시 복사하세요:

    ```bash theme={null}
    mv .git_config_backup .git/config
    ```
  </Step>
</Steps>

이 단계를 완료한 후 `git status`를 실행하여 저장소가 올바르게 작동하는지 확인하세요.

## 일반적인 문제 해결

### "fatal: repository not found" 또는 백업 원격 없음

백업 시스템이 오래된 프로젝트에는 활성화되어 있지 않을 수 있습니다. 오래된 프로젝트 복구에 도움이 필요하면 지원팀에 문의하세요.

### 복구에 최근 커밋이 포함되지 않음

백업은 각 에이전트 커밋 후에 동기화됩니다. 변경 사항을 만들었지만 커밋하지 않은 경우 해당 변경 사항은 백업에 포함되지 않습니다. 커밋되지 않은 파일이 있는지 작업 디렉터리를 확인하세요.

### Git 작업이 느리거나 멈춤

Git 작업이 응답하지 않게 되면 오래된 잠금 파일이 있을 수 있습니다. 안전하게 제거할 수 있습니다:

```bash theme={null}
rm -f .git/index.lock
```

## 데이터 손실 방지

백업 시스템이 자동으로 Git 기록을 보호하지만, 작업을 보호하기 위해 추가적인 단계를 취할 수 있습니다:

* **자주 커밋하세요**: 진행 상황이 지속적으로 백업되도록 작고 자주 커밋하세요
* **체크포인트를 사용하세요**: [Replit 에이전트](/references/agent/overview)로 작업할 때 체크포인트는 주요 마일스톤에서 자동으로 커밋을 생성합니다
* **GitHub에 연결하세요**: 중요한 프로젝트의 경우 추가적인 백업 레이어로 [앱을 GitHub에 연결](/build/import-from-providers)하세요

## 다음 단계

Replit의 버전 관리에 대해 자세히 알아보려면:

* [버전 관리 개요](/learn/projects-and-artifacts/version-control): 모든 버전 관리 옵션에 대해 알아보세요
* [Git 창 사용](/references/workspace-tools/git-interface): 명령줄 없이 시각적으로 Git을 관리하세요
* [체크포인트 및 롤백](/references/version-control/checkpoints-and-rollbacks): 에이전트 체크포인트의 작동 방식을 이해하세요
