반응형

Github의 최대 용량은?


Github.com 을 많은 사람들이 사용하고 있습니다.

github은 점점 기능을 추가하고 개선을 하면서 여러가지 기능을 제공하고 있습니다.

거기에다 자동으로 버전업(형상관리)를 해주고 있으니 얼마나 편리한지 모르겠습니다.

간단한 text 파일 작성이라든가, markdown 파일 작성, 각종 소스관리가 무척 편리합니다.

그래서, github 이용자는 점점 늘어나고 있습니다.

github project 관리 기능

그런데, 단지 텍스트 파일이 아닌 다른 파일들 즉, 이미지나 특정 문서 포맷 파일, 다이어그램 파일 등을

업로드해서 저장하려고 하면 용량이 기하급수적으로 늘어납니다.

이럴 경우에는 내가 사용할 수 있는 용량이 얼마인지 점차 궁금해지고

구글링이나 다음에서 검색해서 찾아보게 되겠죠.

그래서 좀 알아봤습니다. github는 개인의 용량 관리를 어떻게 하고 있을까?

https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github

위 사이트에 들어가서 확인해보면

큰 파일에 관하여

GitHub는 일반 Git 리포지토리에서 추적할 수 있는 파일의 크기를 제한합니다. 제한을 초과하는 파일을 추적하거나 제거하는 방법을 알아보세요.

파일 크기 제한

GitHub는 리포지토리에 허용되는 파일 크기를 제한합니다. 50MB보다 큰 파일을 추가하거나 업데이트하려고 하면 Git에서 경고가 표시됩니다. 변경 내용이 저장소에 성공적으로 푸시되지만 커밋을 제거하여 성능에 미치는 영향을 최소화할 수 있습니다.

깃허브 블록은 100MB를 초과하는 푸시입니다.

이 제한을 초과하는 파일을 추적하려면 Git LFS(Git Large File Storage)를 사용해야 합니다. 자세한 내용은 "Git 대용량 파일 저장소 정보"를 참조하십시오."

리포지토리에 대용량 파일을 배포해야 하는 경우 파일을 추적하는 대신 GitHub.com에서 릴리스를 생성할 수 있습니다. 자세한 내용은 "대형 바이너리 배포"를 참조하십시오."

Git은 대용량 SQL 파일을 처리하도록 설계되지 않았다. 다른 개발자와 대용량 데이터베이스를 공유하려면 Dropbox를 사용하는 것이 좋습니다.

리포지토리 크기 제한

리포지토리의 크기는 1GB 미만으로 유지하는 것이 좋으며 5GB 미만이 좋습니다. 저장소가 작을수록 복제 속도가 빨라지고 작업 및 유지 관리가 쉬워집니다. 저장소가 인프라에 과도하게 영향을 미치는 경우 GitHub Support로부터 수정 조치를 취하라는 이메일을 받을 수 있습니다. NAT은 특히 공동작업자가 많은 대규모 프로젝트에 유연성을 발휘하기 위해 노력하고 있으며, 가능한 경우 항상 귀사와 협력하여 해결책을 모색할 것입니다. 저장소의 크기와 전체 상태를 효과적으로 관리하여 저장소가 인프라에 영향을 미치지 않도록 할 수 있습니다. github/git-sizer 저장소에서 저장소 분석을 위한 조언 및 도구를 찾을 수 있습니다.


Git 대용량 파일 저장소 정보

Git LFS는 저장소에 파일에 대한 참조를 저장함으로써 대용량 파일을 처리하지만 실제 파일 자체는 처리하지 않는다. Git의 아키텍처에서 작업하기 위해 Git LFS는 실제 파일(다른 곳에 저장)에 대한 참조 역할을 하는 포인터 파일을 만든다. GitHub는 저장소에서 이 포인터 파일을 관리합니다. 저장소를 복제하면 GitHub가 포인터 파일을 맵으로 사용하여 대용량 파일을 찾습니다.

Git LFS를 사용하면 다음과 같이 파일을 저장할 수 있습니다.

https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-git-large-file-storage


저장소 및 대역폭 사용량

Git Large File Storage를 사용하는 모든 계정에는 매월 1GB의 여유 저장 공간과 1GB의 여유 대역폭이 제공됩니다. 대역폭 및 스토리지 할당량이 충분하지 않은 경우 Git LFS에 대한 추가 할당량을 구입하도록 선택할 수 있습니다.

예를들면,

500MB 파일을 Git LFS에 푸시하면 할당된 500MB의 스토리지를 사용하고 대역폭은 사용하지 않습니다. 1바이트를 변경하고 파일을 다시 푸시하면 500MB의 스토리지를 추가로 사용하고 대역폭은 사용하지 않으므로 이 두 푸시에 대한 총 사용량이 1GB의 스토리지와 0대역폭으로 늘어납니다.

LFS로 추적되는 500MB 파일을 다운로드하면 저장소 소유자가 할당한 대역폭 중 500MB를 사용하게 됩니다. 공동작업자가 파일을 변경하고 새 버전을 로컬 리포지토리로 가져오면 500MB의 대역폭을 추가로 사용하여 두 다운로드의 총 사용량을 1GB의 대역폭으로 가져옵니다.

깃허브 액션이 LFS로 추적되는 500MB 파일을 다운로드하면 저장소 소유자가 할당한 대역폭 중 500MB를 사용하게 된다.

스토리지 할당량

데이터 팩을 구입하지 않고 1GB 이상의 스토리지를 사용하는 경우에도 자산이 큰 리포지토리를 클론할 수 있지만 포인터 파일만 검색하고 새 파일을 다시 푸시할 수 없습니다. 포인터 파일에 대한 자세한 내용은 "Git 대용량 파일 저장소 정보"를 참조하십시오.

대역폭 할당량

데이터 팩을 구매하지 않고 월 1GB 이상의 대역폭을 사용하면 다음 달까지 계정에서 Git LFS 지원이 비활성화됩니다.

https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage

 

반응형
Posted by SB패밀리

댓글을 달아 주세요

Github Token, 소스트리와 연동

깃허브와 소스트리 사용하시는 분들에게 공유합니다
.
깃허브에 토큰을 통해서 인증하는 이슈가 발생했습니다.
깃허브 토큰으로 인증(연동)하는 방법입니다.
해당 오류가 발생하면 풀,패치,푸시 기능을 사용할수없습니다.
오류가 발생하면 다음과 같은 절차로 연동을 설정해 주시면 
문제 없이 사용할 수 있습니다.

1. 깃허브 우측상단 - 프로필 아이콘을 클릭합니다.

2.
settings > Developer settings 를 클릭합니다.

3. Personal access tokens > Generate new token을 클릭합니다.

 

4. 비밀번호를 확인합니다.

5. 노트와 유효기한,범위항목을 체크하여 토큰을 발행합니다.

6. 토큰 발생 버튼을 클릭하여 토큰을 발행합니다.
7. 소스트리로 로그인을 합니다.
8. 소스트리의 설정을 클릭합니다.


9. 원격저장소를 찾아서 아래와 같은 포맷으로 변경해 주면 됩니다.

http://<USERNAME>:<TOKEN>@<GIT_URL>.git

 


이제 소스트리에서 깃허브에서 발행한 토큰을 추가하여 연동하는 작업을 하였습니다.

 

반응형
Posted by SB패밀리

댓글을 달아 주세요

 

Github Token, 소스트리와 연동



깃허브와 소스트리 사용하시는 분들에게 공유합니다
.
깃허브에 토큰을 통해서 인증하는 이슈가 발생했습니다.
깃허브 토큰으로 인증(연동)하는 방법입니다.
해당 오류가 발생하면 풀,패치,푸시 기능을 사용할수없습니다.
오류가 발생하면 다음과 같은 절차로 연동을 설정해 주시면 
문제 없이 사용할 수 있습니다.

1. 깃허브 우측상단 - 프로필 아이콘을 클릭합니다.

2. 
Settings > Developer settings 를 클릭합니다.


3. Personal access tokens > Generate new token을 클릭합니다.

 

4. Github 비밀번호를 확인합니다.

5. 노트와 유효기한,범위항목을 체크하여 토큰을 발행합니다.

6. 토큰 발생 버튼을 클릭하여 토큰을 발행합니다.
7. 소스트리로 로그인을 합니다.


8. 소스트리의 설정을 클릭합니다.


9. 원격저장소를 찾아서 아래와 같은 포맷으로 변경해 주면 됩니다.

http://<USERNAME>:<TOKEN>@<GIT_URL>.git

 


이제 소스트리에서 깃허브에서 발행한 토큰을 추가하여 연동하는 작업을 하였습니다.

반응형
Posted by SB패밀리

댓글을 달아 주세요

Amazon AWS SQS SNS  


아래의 github 오픈소스와 유튜브 동영상으로 go lang 테스트를 해보면 동작원리를 구축 테스트해볼 수 있습니다.
개념 자체는 어려운 게 아니라서 테스트는 쉽습니다.
시스템에 데이터 처리량이 많아지면 쓰레드나 폴링, 분산처리에 신경쓰면 되겠습니다. 이 부분이 어렵겠죠.

https://github.com/aws/aws-sdk-go
https://www.youtube.com/watch?v=iKC9ctbStU0&t=1221s&ab_channel=GoDays
https://github.com/borlinp/amazon-sns-sqs

 

borlinp/amazon-sns-sqs

Example of using Go with Amazon SNS and SQS. Contribute to borlinp/amazon-sns-sqs development by creating an account on GitHub.

github.com

SNS와 SQS의 서비스 구성




아마존 SQS 큐(대기열) 유형

반응형
Posted by SB패밀리

댓글을 달아 주세요

Django + Gonicorn + Nginx 연동 작업을 하고 있다.

요즘 주말에 건강을 위해서 공원이나 카페로 돌아다니고 하느라 시간 투자를 많이 못했다.
집에 오면 왜 이리 피곤한지.

gonicorn 설정과 nginx 설정에 익숙해지면서 몇가지 설정만 하면
Django Gonicorn Nginx 기본적인 연동은 쉽게 될 수 있다는 것을 알았다.
어젯밤 테스트 하는데 이상하게 문제가 없어 보이는데 aws 에서 nginx로 연동한 페이지가 보이질 않는다.
혹시나 해서 확인해 보니 8000 포트는 오픈했는데 80 포트를 오픈하지 않아서 였다.

Django + Gonicorn + Nginx 연동은 성공적으로 테스트 되었고 조만간 정리해서 포스팅 할 예정이다.
아, 참! supervisor를 이용하면 죽지않는 웹서버를 구현가능하다고 한걸로 아는데
배포방법을 곧 구축 테스트를 하게 되면 그 때 이것도 해볼 생각이다.
도커, AWS 오케스트레이션 구축 테스트가 기대된다. 


그리고 Jenkins + Python 의 DevOps중 CI를 하기 위한 테스트도 연동되었다.
github와 연동해서 aws서버에 복사해주는 기능을 테스트 해봐야한다.

 

이미지출처 : https://villoro.com/post/nginx_gunicorn

 

반응형
Posted by SB패밀리

댓글을 달아 주세요

JENKINS  git 소스 빌드 에러 해결하는 방법

젠킨스에서 git 연동해서 소스를 빌드할 때 에러가 발생하는 경우 중 다음과 같은 에러가 발생한다면

ERROR: Could`t find any revision to build. Verify the repository and branch configuration for this job.
Finished: FAILURE


당황하지 말고 아래와 같이 설정을 해 주어야 함

젠킨스의 구성메뉴를 클릭한다. 소스코드 관리 탭에서 Git Repositoes 설정으로 가서 다음과 같이 설정을 변경한다.

* Respository URL
소스를 가져올 git 레파지토리 url을 입력한다.
* Credentials
github의 로그인 id/password와 jenkins에서 사용할 id를 입력한다.
* Name
"origin"을 입력한다.
* Refspec
"refs/pull/*:refs/remotes/origin/pr/*"를 입력한다.
* branches to build
공백으로 비워둔다.


JENKINS  git 소스 빌드 에러 해결하는 방법

반응형
Posted by SB패밀리

댓글을 달아 주세요

Jenkins 로 CI/CD 자동배포 구축 (DevOps)

지금은 공부단계, 나중에 공부해서 정리해보자.


--
https://gist.github.com/ming-AA/6a5df39268e2e70d7cd8877b71ffd0a9
--
Jenkins 로 CI/CD 자동배포 구축 (DevOps)

반응형
Posted by SB패밀리

댓글을 달아 주세요

프로젝트 방법론, 관리를 위한 유용한 툴

 

GitHub : Web용 프로젝트관리 시스템 ( https://github.com/ )

Source Tree : GUI용 버전관리 시스템 ( https://www.sourcetreeapp.com/ )

Trac : Web용 버전관리, 버그추적 시스템 ( https://trac.edgewall.org/ )

South Django : DB 마이그레이션 Tool ( https://south.readthedocs.io/en/latest/ )

Redmine : 도입 장벽이 비교적 낮은 오픈소스 티켓 관리 시스템 ( https://www.redmine.org/ )

Mockito : DB와 연계된 테스트가 가능한 오픈소스 테스트 프레임 워크 ( https://site.mockito.org/ )

Vagrant : 가상화 소프트웨어를 고 관리하는 도구 ( https://www.vagrantup.com/ )

Chef : 원하는 환경을 구성하기 위해 서버나 미들웨어를 설정하는 도구 ( https://docs.chef.io/cookbooks/ )

Jenkins : 지속적 통합을 제공하는 툴 ( https://jenkins.io/ )

Selenium : 웹 어플리케이션 기능 테스트나 통합 테스트를 자동화하는 도구 ( https://www.selenium.dev/ )

 

반응형
Posted by SB패밀리

댓글을 달아 주세요

Github의 최대 용량을 알고 싶어요

 

Github.com 을 많은 사람들이 사용하고 있습니다.

github은 점점 기능을 추가하고 개선을 하면서 여러가지 기능을 제공하고 있습니다.

거기에다 자동으로 버전업(형상관리)를 해주고 있으니 얼마나 편리한지 모르겠습니다.

간단한 text 파일 작성이라든가, markdown 파일 작성, 각종 소스관리가 무척 편리합니다.

그래서, github 이용자는 점점 늘어나고 있습니다.

github project 관리 기능

그런데, 단지 텍스트 파일이 아닌 다른 파일들 즉, 이미지나 특정 문서 포맷 파일, 다이어그램 파일 등을

업로드해서 저장하려고 하면 용량이 기하급수적으로 늘어납니다.

이럴 경우에는 내가 사용할 수 있는 용량이 얼마인지 점차 궁금해지고

구글링이나 다음에서 검색해서 찾아보게 되겠죠.

그래서 좀 알아봤습니다. github는 개인의 용량 관리를 어떻게 하고 있을까?

https://help.github.com/en/github/managing-large-files/what-is-my-disk-quota 

 위 사이트에 들어가서 확인해보면

Github에 업로드할수 있는 최대 용량은 단일 파일 100MB, repos(저장소) 용량 최대 100GB이다. 하지만 저장소 용량은 사실상 100GB를 채울수 없게 만들고, Github에서도 1GB 이하로 유지하기를 바라고 있다. 오늘은 왜 100GB를 채울수 없게 만드는지 알아볼 필요가 있습니다.

 

 

반응형
Posted by SB패밀리

댓글을 달아 주세요

마크다운(markdown) 설명과 예제가 간단하게 잘 되어 있는 사이트

https://bj25.tistory.com/10?category=836194

Markdown은 일반 텍스트 문서의 양식을 편집하는 문법으로서 존그루버에 의해 2004년에 만들어졌습니다. Markdown의 목표는 플레인 텍스트 포맷을 사용하여 사용자들이 보다 쉽고 편리하게 텍스트 문서를 작성할 수 있도록하고, XHTML 이나 HTML로 선택적 변환이 가능하게 하는 것입니다. 대표적인 마크다운 문법으로 작성된 텍스트 문서는 Github의 README.md 파일입니다.

반응형

'IT-개발,DB' 카테고리의 다른 글

MIDAS에 관하여  (0) 2020.05.03
Data Integrity(데이터 무결성) 에 관하여  (0) 2020.04.12
마크다운(markdown) 알아보자.  (0) 2020.04.02
About Angular 9 Release  (0) 2020.01.22
IntelliJ Golang 연동할 때 에러  (0) 2020.01.17
프로젝트 3요소  (0) 2020.01.15
Posted by SB패밀리

댓글을 달아 주세요

Angular 9 이 2019년 출시 예정이었으나 연기되어서 

곧 일정이 발표될 예정입니다.

 

2019년 1월 8일 Angular 9에 대한 약간의 스포일러가 있습니다.

 

대략 9개 정도의 큰 변화가 있을 예정입니다.

 

그 중 하나인 Ivy rendering은 이전에는 opt-in 에서 default redering engine이 될 것입니다.

 

Angular 9 이 곧 출시 됩니다.

 

Default Ivy

Angular Core Type-Safe Changes

ModuleWithProviders Support

Changes with Angular Forms

Dependency Injection Changes in Core

Enhancement of Language Service

Service Worker Updates

i18n Improvements

API Extractor Updates

Angular Component Updates

Updating to Angular Version 9

Updating CLI Apps

 

반응형

'IT-개발,DB' 카테고리의 다른 글

Data Integrity(데이터 무결성) 에 관하여  (0) 2020.04.12
마크다운(markdown) 알아보자.  (0) 2020.04.02
About Angular 9 Release  (0) 2020.01.22
IntelliJ Golang 연동할 때 에러  (0) 2020.01.17
프로젝트 3요소  (0) 2020.01.15
ICONIX Process  (0) 2019.12.30
Posted by SB패밀리

댓글을 달아 주세요