GitHub에 사이트 코드 보관하기

GitHub 동기화는 사이트 자체 코드를 GitHub 저장소에 보관하고 양방향으로 동기화해요. 라이브가 되는 버전마다 그곳에 커밋이 만들어지고, 연결된 브랜치에 푸시하면 점검과 빌드를 거쳐 사이트에 게시돼요.

읽는 데 5분2026년 10월 8일 스튜디오 기준으로 확인함

GitHub로 가는 내용

사이트 자체 파일만 올라가요. 파일 탐색기에 보이고 다운로드에 담기는 파일이에요. 모든 Briks 사이트가 실행되는 데 쓰는 공유 부분, 사이트 설정, 키, 데이터베이스 레코드는 절대 올라가지 않아요. 그래서 저장소는 단독으로 빌드되거나 실행되지 않고, 푸시한 내용을 Briks가 빌드하고 게시해요.

폴더구성 내용
app/사이트의 페이지들이에요.
components/custom/사이트를 위해 작성된 섹션들이에요.
content/사이트의 문구와 사실 정보예요.
api/사이트 자체의 서버 코드가 있다면 그 코드예요.
db/schema.ts와 db/data/사이트 데이터의 구조와 처음에 들어 있는 레코드예요.
public/사이트 자체의 사진과 파일이에요.

저장소에 README가 없으면 Briks가 이 폴더들과 동기화 방식을 설명하는 README를 추가해요.

저장소 연결하기

  1. Connect GitHub 누르기

    위치: Settings, GitHub

    GitHub가 열려요. Briks 앱이 아직 GitHub 계정이나 조직에 설치되어 있지 않다면, GitHub가 어디에 설치할지와 어떤 저장소를 쓸 수 있게 할지 묻고 나서 다시 돌려보내 줘요.

  2. 저장소와 브랜치 선택하기

    위치: Settings, GitHub

    계정을 고른 다음 저장소를 고르세요. 브랜치는 저장소의 기본 브랜치로 시작해요. 다른 브랜치 이름을 써도 되고, 아직 없는 브랜치는 기본 브랜치에서 만들어져요. Create a repository on GitHub를 누르면 GitHub가 열리고, 사이트 이름을 딴 비공개 저장소를 만들 수 있어요. Repository not listed? Give Briks access to it를 누르면 GitHub의 앱 설정이 열려요.

  3. Connect 누르기

    위치: Settings, GitHub

    빈 브랜치는 바로 연결돼요. 브랜치에 이미 파일이 있으면 Briks가 먼저 파일이 몇 개인지, 그중 사이트 폴더에 있는 것이 무엇인지, 첫 커밋이 그 파일들에 어떤 영향을 주는지 보여 줘요. 진행하려면 Connect and commit this site를, 다른 것을 고르려면 Choose another를 누르세요.

몇 분 안에 첫 커밋이 라이브 버전을 가져와요. 사이트 폴더의 파일은 사이트 자체의 파일로 바뀌고, 사이트에 없는 파일은 삭제돼요. 저장소의 나머지는 그대로예요. Briks는 강제 푸시를 하지 않으므로 기록에서 사라지는 것은 없어요.

Briks에서 GitHub로

  • 게시되면서 사이트의 파일을 바꾸는 각 버전은 만든 방법과 상관없이 브랜치에 커밋 하나가 돼요. 빌드, 변경, File Explorer나 Visual Editor에서의 저장, 복원 모두 해당돼요. A/B 테스트가 진행되는 동안에는 그 버전들이 테스트가 끝날 때까지 기다려요.
  • 커밋 메시지는 스튜디오에서 보는 요약이고, 버전 번호와 요청한 사람의 이름이 함께 들어가요.
  • GitHub에는 Live as version 15처럼 각 커밋의 상태가 표시돼요.
  • 파일에 키처럼 생긴 것이 있거나 Briks 자체 서비스의 이름이 들어 있으면 아무것도 전송되지 않고, 어떤 파일인지 알려 드려요. 키는 시크릿에 두세요.

GitHub에서 Briks로

연결된 브랜치에 푸시하면 AI나 크레딧 없이 사이트에 게시돼요. 먼저 File Explorer에서 저장할 때와 같은 안전 점검을 거쳐요. 다른 웹사이트에 접근하는 스크립트, 프레임, 폼은 Settings, Preferences, Allowed websites에 그 웹사이트를 추가하지 않았다면 거부돼요. 그다음 Briks가 빌드하고, 1~2분 안에 커밋 상태에 Live as version 16이 표시돼요. 게시되지 않았다면 그 이유가 표시돼요.

푸시가 바꾸는 것어떻게 진행되나요
app/, components/custom/, content/, api/, db/schema.ts, db/data/ 또는 public/의 파일사이트에 게시됐어요.
README, 라이선스 등 저장소 루트에 있는 파일과 .github/GitHub에 보관돼요. 사이트에는 포함되지 않아요.
db/migrations/거부돼요. Briks는 db/schema.ts에서 데이터 변경을 작성하므로 대신 스키마를 바꾸세요.
그림과 텍스트가 아닌 다른 파일거부돼요. 미디어 라이브러리를 통해 추가해 주세요. 삭제는 괜찮아요.
그 밖의 모든 것, 예를 들어 설정 파일, .env 파일, 키처럼 생긴 파일거부되고, 이유가 커밋에 표시돼요. 푸시의 내용은 하나도 게시되지 않아요.
  • 푸시 한 번으로 최대 300개 파일을 바꿀 수 있고, 파일당 256 KB, 전체 8 MB까지예요.
  • 사이트마다 한 시간에 최대 20번, 하루에 최대 100번의 푸시가 게시돼요. 한도를 넘은 푸시는 기다리고, GitHub의 상태에 게시될 시각이 표시돼요. 기다리는 동안 들어온 푸시는 함께 게시돼요.
  • A/B 테스트가 진행되는 동안에는 푸시가 테스트가 끝날 때까지 기다려요.

양쪽에서 같은 파일을 바꿨을 때

Briks가 게시하는 중에 들어온 푸시는 차례를 기다려요. 푸시와 Briks가 서로 다른 파일을 바꿨다면 둘 다 유지돼요. 같은 파일을 서로 다르게 바꿨다면 푸시의 내용은 하나도 게시되지 않아요. Briks는 자기 버전을 briks-sync라는 브랜치에 두고, 푸시의 상태에 해당 파일을 알려 줘요. GitHub에서 briks-sync를 병합한 뒤 다시 푸시하거나, Settings의 GitHub에서 해결하세요:

  • Use GitHub's version은 양쪽에서 모두 바뀐 파일을 포함해 푸시 전체를 게시해요.
  • Keep Briks's version은 양쪽이 모두 바꾼 파일을 빼고 푸시를 게시해요.

강제 푸시 등으로 브랜치의 기록이 다시 쓰이면, 같은 두 버튼 중 하나를 고를 때까지 동기화가 멈춰요.

알려 주는 내용

잘 되는 동기화는 조용해요. 푸시가 게시되었다는 메시지만 나와요. 게시되지 않은 푸시, 병합을 기다리는 푸시, 멈춘 연결은 알림 벨에 표시되고, Builds finished or failed 알림이 켜진 Telegram과 Discord 채팅에도 표시돼요. Settings, GitHub에서는 양방향으로 최근 20번의 동기화를 볼 수 있고, 각각 커밋, 파일, 결과가 함께 나와요.

연결 해제

  • Settings, GitHub에서 Disconnect를 누르면 양방향 동기화가 모두 멈춰요. 저장소와 그 기록은 그대로 남아요.
  • 프로젝트를 다른 워크스페이스로 옮기면 연결이 해제돼요.
  • GitHub에서 앱을 삭제하거나 저장소가 앱의 접근 범위에서 빠지면 동기화가 멈추고 알림이 와요.
  • 프로젝트를 삭제해도 저장소는 전혀 건드리지 않아요.
이미 가지고 있는 저장소로 프로젝트를 시작할 수 있나요?

아직은 안 돼요. 기존 저장소 가져오기는 제공되지 않아요. Briks에서 사이트를 만든 다음 저장소를 연결하세요.

저장소를 내 컴퓨터에서 실행할 수 있나요?

아니요. 저장소에는 사이트 고유의 파일만 있고 모든 Briks 사이트가 공통으로 쓰는 부분은 없어서, 저장소만으로는 빌드되지 않아요. 변경 사항을 푸시하면 Briks가 빌드해서 게시해요.

Briks는 내 GitHub 계정에서 무엇을 할 수 있나요?

앱을 설치할 때 요청하는 권한만 사용해요. 연결해 준 저장소의 파일을 읽고 쓰며, 커밋의 상태를 설정해요. 연결한 브랜치에만 쓰고, 양쪽에서 같은 파일을 바꿨을 때는 briks-sync 브랜치에도 써요.

Briks가 내 커밋 메시지를 읽나요?

아니요. 동기화 기록에는 각 푸시의 커밋, 파일, 푸시한 사람이 표시되고 메시지는 표시되지 않아요.