일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 기능 많은 브라우저
- 커스텀단축키
- 초년생
- 대규모 시스템 설계
- 알고리즘초보
- 코코테라스
- ui 커스텀
- 알고리즘
- 브라우저 단축키
- 코딩
- 가발자 인사이드아웃
- 알고리즘 추천
- 스카이라인 열차
- 조가사키 해안
- 프로그래밍
- 소프트웨어 지표
- 알고리즘사이트
- 자동화
- mac 화면분할
- 알고리즘분류
- 판교퇴근길밋업
- 오블완
- 스프링부트
- 편한 즐겨찾기 편집
- spring boot
- Java
- 코드트리
- JMeter
- 성능테스트
- aws
- Today
- Total
영감을 (inspire) 주고픈 개발 블로그
git sparsecheckout 으로 github에서 spring-projects example 들 중 원하는 프로젝트만 가져오기 본문
git sparsecheckout 으로 github에서 spring-projects example 들 중 원하는 프로젝트만 가져오기
inspire12 2023. 12. 20. 18:27Spring 의 큰 장점 중 하나는 문서화를 굉장히 잘해놓았다는 것 입니다.
자바 8버전 이후로는 javadoc 을 이용해 코드 내에서도 버전과 사용법 등 문서화가 잘 되어있어서 코딩중에서도 읽으면서 공부 할 수 있습니다..
공식 사이트인 spring.io의 문서도 굉장히 친절하게 잘되어있습니다.
게다가 각 예제 프로젝트들도 github에 올려져 있습니다
https://github.com/spring-projects?q=example&type=all&language=&sort=
그러나 이 github 프로젝트들을 받아보면 크기가 굉장히 크고 복잡해 보입니다. 이는 여러 Spring 예제들을 하나의 github 에 모아놨기 때문입니다.
예를 들어 JPA 를 공부하다가 JPA21라는 걸 새로 알아 이 변경점을 알고 싶어졌습니다. 그래서 spring-data-examples 내의 jpa > jpa21 의 spring 프로젝트를 clone을 하려고 해도 다른 프로젝트까지 다 받아지게 됩니다.
이런 경우를 위해서 git clone sparsecheckout 라는 기능이 있습니다
이 방법은 git 세팅을 하기 때문에 기존에 .git 파일이 있다면 덮어쓰게 된다. 때문에 sparse를 위한 폴더를 하나 만들기를 추천한다.
그럼 한번 jpa21 프로젝트만 따로 받아보도록 하겠습니다.
일단 clone을 받을 위치를 정합니다. 저는 ~/Document/workspace/sparse-project 라는 위치에서 이런 류의 sparsecheckout 이 필요한 project 를 받아써보고 있습니다.
mkdir ~/Documents/workspace/sparse-project
cd ~/Documents/workspace/sparse-project
git init
git remote add origin https://github.com/spring-projects/spring-data-examples.git
git config core.sparseCheckout true
echo 'jpa/jpa21/*' >> .git/info/sparse-checkout
git pull origin main
rm -rf .git
clone에 사용한 git 은 필요가 없기에 삭제하고 세팅 진행하겠습니다.
결과
이제 다른 github 프로젝트의 부분을 받아보겠습니다. 예시로 제가 블로그에 쓰는 글의 예제 코드를 저장한 github repository에서 프로젝트를 가져와보겠습니다.
git init
git remote add origin https://github.com/inspire12/inspire12-blog-code.git
git config core.sparsecheckout true
echo 'inspire12-loadtest/*' >> .git/info/sparse-checkout
git pull origin main
rm -rf .git
결과
'개발 > 세팅' 카테고리의 다른 글
코드트리 (Code Tree): 알고리즘 테스트 준비를 위한 사이트 추천 (2) | 2024.02.25 |
---|---|
라이브 코딩 혹은 강의를 하게된 개발자를 위한 intellij 개발 발표 세팅 팁 (2) | 2024.01.11 |
테크 블로그 정리 (0) | 2021.11.06 |
인텔리제이: 단축키 (0) | 2021.11.04 |
mac: 화면 분할 단축키로 등록 (0) | 2021.11.02 |