GitHub의 리포지토리에 파일 추가
브라우저를 통해 리포지토리에 추가하는 파일은 파일당 25MiB로 제한됩니다. 명령줄을 이용하면 최대 100MiB의 파일을 추가할 수 있습니다. 자세한 내용은 "명령줄을 사용하여 리포지토리에 파일 추가"를 참조하세요. 100MiB보다 큰 파일을 추가하려면 Git 대용량 파일 스토리지을(를) 사용해야 합니다. 자세한 내용은 "GitHub의 대용량 파일 정보"을(를) 참조하세요.
동시에 여러 파일을 GitHub에 업로드할 수 있습니다.
리포지토리에 보호된 분기가 있는 경우 GitHub를 사용하여 보호된 분기의 파일을 편집하거나 업로드할 수 없습니다. GitHub Desktop을 사용하여 변경 내용을 새 분기로 이동하고 커밋할 수 있습니다. 자세한 내용은 "보호된 분기 정보" 및 "GitHub Desktop에서 프로젝트 변경 내용 커밋 및 검토"의 내용을 참조하세요.
리포지토리에 푸시 규칙 집합이 활성화되어 있을 수 있습니다. 푸시 규칙 집합은 특정 제한 사항에 따라 리포지토리에 새 파일 만들기를 차단할 수 있습니다. 푸시 규칙 집합은 리포지토리의 전체 포크 네트워크에 적용됩니다. 즉, 루트 리포지토리에 구성된 모든 푸시 규칙 집합은 리포지토리의 모든 포크에도 적용됩니다. 자세한 내용은 "규칙 세트 정보"을(를) 참조하세요.
리포지토리는 푸시 보호로 보호할 수 있습니다. 푸시 보호를 통해 GitHub에서는 토큰과 같은 지원되는 비밀이 파일에 포함된 경우 리포지토리로의 파일 업로드를 차단합니다. 파일을 다시 업로드하기 전에 파일에서 비밀을 제거해야 합니다. 자세한 내용은 "GitHub UI에서 푸시 보호 작업" 및 "GitHub UI에서 푸시 보호 작업" 항목을 참조하세요.
Note
웹 UI에서 파일 업로드에 대한 푸시 보호는 현재 공개 미리 보기 버전이며 변경될 수 있습니다.
-
GitHub에서 리포지토리의 기본 페이지로 이동합니다.
-
파일 목록 위에서 파일 추가 드롭다운 메뉴를 사용하고 파일 업로드를 선택합니다. 또는 파일을 브라우저로 끌어서 놓을 수 있습니다.
-
업로드할 파일을 선택하려면 파일 또는 폴더를 끌어서 놓거나 파일 선택을 클릭합니다.
-
"커밋 메시지" 필드에, 파일의 변경 내용을 설명하는 커밋 메시지를 간결하고 명확하게 입력합니다. 커밋 메시지에서 둘 이상의 작성자가 커밋의 특성을 지정할 수 있습니다. 자세한 내용은 "여러 작성자와 커밋 만들기"을(를) 참조하세요.
-
커밋 메시지 필드 아래에서 현재 분기 또는 새 분기에 커밋을 추가할지 여부를 결정합니다. 현재 분기가 기본 분기인 경우 커밋에 대한 새 분기를 만든 다음 끌어오기 요청을 만들도록 선택해야 합니다. 자세한 내용은 "끌어오기 요청 만들기"을(를) 참조하세요.
-
파일 변경 제안을 클릭합니다.
명령줄을 사용하여 리포지토리에 파일 추가
명령줄을 사용하여 기존 파일을 GitHub의 리포지토리에 업로드할 수 있습니다.
이 절차에서는 사용자가 이미 다음을 수행했음을 가정합니다.
- GitHub에 리포지토리를 만들었거나, 기여할 다른 사용자가 소유한 기존 리포지토리가 있음
- 컴퓨터에 로컬로 리포지토리를 복제했음
경고: 원격 리포지토리에 암호 또는 API 키 등의 중요한 정보를 절대 git add
, commit
또는 push
하지 마세요. 이 정보를 이미 추가한 경우 "Removing sensitive data from a repository(리포지토리에서 중요한 데이터 제거)"을 참조하세요.
-
컴퓨터에서 GitHub에 업로드할 파일을 리포지토리를 복제할 때 만든 로컬 디렉터리로 옮깁니다.
-
Terminal(터미널)Terminal(터미널)Git Bash를 엽니다.
-
현재 작업 디렉터리를 로컬 리포지토리로 변경합니다.
-
로컬 리포지토리에 커밋할 파일을 스테이징합니다.
$ git add . # Adds the file to your local repository and stages it for commit. 파일의 스테이징을 해제하려면 ‘git reset HEAD YOUR-FILE’을 사용합니다.
-
로컬 리포지토리에서 스테이징한 파일을 커밋합니다.
$ git commit -m "Add existing file" # Commits the tracked changes and prepares them to be pushed to a remote repository. 이 커밋을 제거하고 파일을 수정하려면 ‘git reset --soft HEAD~1’을 사용하여 파일을 다시 커밋하고 추가합니다.
-
에 로컬 리포지토리의 변경 사항을 푸시합니다.
$ git push origin YOUR_BRANCH # Pushes the changes in your local repository up to the remote repository you specified as the origin