일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Codestates
- 2021
- JavaScript
- 주간보고
- 코드스테이츠
- 선형회귀
- 빅데이터
- bootcamp
- python
- 기초통계
- 열심히
- 재미져
- 성실히
- 딥러닝
- 독서
- 자료구조
- Ai
- leetcode
- 코딩테스트
- yolo
- 파이썬
- MYSQL
- 매일매일
- selenium
- 꾸준히
- SQL
- pandas
- 리뷰
- 노마드코더
- 부트캠프
- Today
- Total
코딩일기
git release git에 대용량 파일을 업로드하는 방법 본문
git release를 활용하여 대용량 데이터 파일을 주고 받을 수 있다는 사실을 알고 계셨나요? 프로젝트를 하다보면, 다른 분들에게 대용량 파일을 공유하기 위해 드라이브를 사용하여 공유하곤 합니다. 그러나, 이는 파일을 다운로드/업로드할때 매우 번거롭습니다. 어떻게 하면 서로 쉽게 주고 받을 수 있는지에 대해서 오늘은 알려드리고자 합니다.
-
-
-
git release 데이터 저장하기
먼저, 새로운 Repo를 만들어줍니다. 만들때 Add readme를 눌러주시면 됩니다. ( 본인에 상황에 따라서 달라질 수 있으며, 본 포스팅에서는 추가하여 만들도록 하겠습니다. )
우측 하단에 보시면, Releases라는 곳이 보입니다.
여기서 Create a new release를 하시면 됩니다.
Release title에는 원하는 타이틀명을 입력하시면 됩니다.
저는 여기에 data를 올릴려고 하기 때문에 데이터 이름을 명시해두었습니다.
Attach binaries by ~ 을 클릭하셔서 원하는 데이터를 업로드 하시면 됩니다.
아래와 같이 데이터가 정상적으로 업로드 된 것으로 볼 수 있습니다.
여기서 Source code(zip), Source code(tar.gz)는 원래 release에 필요한 데이터이기 때문에 손대지 않는 것을 추천드립니다.
이렇게 올린 데이터를 어떻게 받아오면 될까요?
간단하게 코랩에서 테스트를 해보겠습니다.
바로 이렇게 간단하게 받아올 수 있습니다. 쉽죠?
그렇다면, 과연 Git-Release는 무엇일까요? 사실 데이터를 올리는 것은 원래 사용 목적에 맞지 않는 것입니다.
git-release는 정적 페이지를 배포할 수 있도록 도와주는 git의 한 기능인데요.
git-release에 대해서 한번 살펴 보도록 하겠습니다.
-
-
-
Git Release: 완벽하게 알아보기
Git은 코드 버전 관리를 위한 인기 있는 도구입니다. 여러 기능 중에서 "Release"는 프로젝트의 특정 지점을 표시하고 배포하는 데 유용한 기능입니다. 이 글에서는 Git Release의 정의부터 사용 방법까지 상세하게 살펴보겠습니다.
1. Git-Release란?
Git Release는 프로젝트의 특정 시점을 고정하고, 그 시점의 코드를 압축하여 배포하기 위한 메커니즘입니다. 이를 통해 사용자나 다른 개발자들이 프로젝트의 특정 버전을 쉽게 다운로드하거나 참조할 수 있습니다.
2. Git-Release의 장점
- 정적 참조: Release는 특정 commit을 참조하므로, 참조된 코드는 시간이 지나도 변하지 않습니다.
- 배포 용이성: Release를 통해 생성된 압축 파일(zip 또는 tar.gz)을 통해 쉽게 배포 가능합니다.
- 버전 관리: 프로젝트의 중요한 마일스톤이나 버전을 명확하게 표시할 수 있습니다.
3. Git-Release 생성하기
- Git 저장소에서 원하는 commit 또는 branch로 이동합니다.
- git tag 명령어를 사용하여 태그를 생성합니다. 예: git tag v1.0.0
- git push --tags 명령어를 사용하여 태그를 원격 저장소에 푸시합니다.
- GitHub, GitLab 등의 웹 기반 인터페이스에서 해당 태그를 선택하고 "Release" 옵션을 사용하여 Release를 생성합니다.
4. Git-Release 주의사항
- Release 전에 코드에 대한 테스트와 검토가 철저히 이루어져야 합니다.
- Release 이름(태그)는 명확하고 일관된 규칙을 따라야 합니다. 예: Semantic Versioning
5. 결론
Git Release는 프로젝트의 특정 시점을 명확하게 표시하고 배포하는 데 유용한 도구입니다.
-
-
-
Git-Release: Tag
1. 태그(Tag)
Git에서 Release를 만들기 위해서는 먼저 태그를 이해해야 합니다. 태그는 특정 commit에 대한 참조로, 보통 중요한 시점이나 배포 버전을 표시하는 데 사용됩니다.
- Lightweight 태그: 단순한 참조로, 어떤 메시지도 포함되지 않습니다.
- Annotated 태그: 메시지, 태거 이름, 이메일 등의 정보와 함께 commit을 참조합니다. GPG로 서명할 수 있어 보안에 더 용이합니다.
태그 생성 예시:
bashCopy code
# Annotated 태그 생성 git tag -a v1.0.0 -m "Release version 1.0.0" # Lightweight 태그 생성 git tag v1.0.0
2. Semantic Versioning (SemVer)
Semantic Versioning은 소프트웨어 버전 관리에 대한 규약입니다. "MAJOR.MINOR.PATCH" 형식을 가지며, 각 숫자는 다음과 같은 의미를 가집니다:
- MAJOR: 호환되지 않는 API 변경이 있을 때 증가
- MINOR: 기능이 추가되면서 이전 버전과 호환될 때 증가
- PATCH: 버그 수정과 같은 이전 버전과 호환되는 수정이 있을 때 증가
3. Git Hooks
Git Hook은 특정 이벤트가 발생할 때 자동으로 실행되는 스크립트입니다. 예를 들어, pre-commit Hook은 commit이 되기 전에 코드 포맷팅 검사를 수행할 수 있습니다. Release 전에 특정 검사나 빌드 과정을 자동화하려면 Hook을 사용할 수 있습니다.
4. Continuous Integration (CI) & Continuous Deployment (CD)
CI/CD는 개발 및 배포 프로세스를 자동화하는 방법론입니다. Git에서 새로운 코드가 푸시되면 자동으로 테스트, 빌드, 배포하는 과정을 자동화하여 효율성과 안정성을 높입니다. Release 프로세스도 CI/CD 파이프라인에 포함될 수 있습니다.
5. Changelog
Changelog는 프로젝트의 변경 내용을 기록하는 문서입니다. 각 Release마다 어떤 기능이 추가되었는지, 수정되었는지, 버그가 수정되었는지 등의 정보를 제공하여 사용자나 개발자에게 프로젝트의 변화를 쉽게 이해할 수 있게 도와줍니다.
다른 글도 참고해보세요.