Skip to content

Commit 5bf69c5

Browse files
committed
docs: update gpg, jekyll, shell
1 parent 0ab0169 commit 5bf69c5

8 files changed

+223
-6
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
22
layout: post
3-
title: git action의 종속성 업데이트
3+
title: Git action의 종속성 업데이트
44
categories: study
5-
tags: [web]
5+
tags: [Git]
66
---
77

88
## 블로그 글이 계속 보이지 않았다.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
22
layout: post
3-
title: git의 cherry pick
3+
title: Git의 cherry pick
44
categories: study
5-
tags: [web]
5+
tags: [Git]
66
---
77

88
## cherry pick

_posts/2025-12-30-Jekyll-빌드-오류-해결-study.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
layout: post
33
title: Repository와 SSL 인증서 문제
44
categories: study
5-
tags: [Jekyll, OpenSSL, Troubleshooting]
5+
tags: [Jekyll, OpenSSL]
66
---
77

88
## 문제 상황

_posts/2025-12-31-Git-Action-403.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
layout: post
33
title: Git Action 403 문제
44
categories: study
5-
tags: [Git, Study]
5+
tags: [Git]
66
---
77

88
## Problems

_posts/2026-01-05-Git-GPG.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
layout: post
3+
title: 3. SSH? GPG?
4+
categories: study
5+
tags: [web]
6+
---
7+
8+
> 커밋에 서명하고 싶다.
9+
10+
학습을 하다보니 계정 도용 사례가 있는 걸 보고 커밋에 서명을 직접 해보기로 했다.
11+
그래서 찾아본 SSH와 GPG의 차이점을 설명해보려고 한다.
12+
13+
## SSH란?
14+
15+
SSH (Secure Shell)
16+
17+
용도: 인증 (Authentication) - "나는 이 사람이 맞다"
18+
19+
- Git 원격 저장소 접근 시 사용
20+
- GitHub/GitLab에 push/pull 할 권한 확인
21+
- 비밀번호 없이 자동 로그인
22+
23+
### SSH 사용 예시
24+
git clone git@github.com:username/repo.git
25+
git push origin main
26+
27+
## GPG란?
28+
GPG (GNU Privacy Guard)
29+
30+
용도: 서명 (Signing) - "이 커밋은 내가 작성한 게 맞다"
31+
32+
- 커밋/태그에 디지털 서명
33+
- 커밋 위조 방지
34+
- GitHub에서 "Verified" 배지 표시
35+
36+
### GPG 사용 예시
37+
git commit -S -m "message" # 서명된 커밋
38+
git tag -s v1.0.0 # 서명된 태그
39+
40+
핵심 차이
41+
42+
| | SSH | GPG |
43+
|-------|----------------------------|---------------------------------|
44+
| 목적 | 접근 권한 확인 | 작성자 신원 확인 |
45+
| 언제 | push/pull/clone 시 | commit/tag 시 |
46+
| 보장 | "이 사람이 접근 권한 있음" | "이 코드를 정말 이 사람이 썼음" |
47+
| 필수? | HTTPS 대신 사용 가능 | 선택사항 (보안 강화용) |
48+
49+
실무 사용
50+
51+
- SSH: 거의 모든 개발자가 사용 (편의성)
52+
- GPG: 오픈소스 메인테이너, 보안 중요한 프로젝트에서 사용
53+
54+
요약: SSH는 "로그인", GPG는 "도장/인장"
Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
---
2+
layout: post
3+
title: Jekyll
4+
categories: study
5+
tags: [Jekyll]
6+
---
7+
8+
## Jekyll 이란?
9+
10+
정적 웹사이트 프레임워크, [Jekyll](https://jekyllrb.com/) 이다.
11+
html, css, md 관리에 편하다.
12+
이걸 썼던 이유는 나는 옵시디언을 사용하고 있었고 굳이 다른 프론트에 fast API를 붙여서 관리하고 싶지 않았다.
13+
재밌는 지점은 학술 블로그는 전부 Jekyll 테마 또는 html 하나로 유지되고 있는 걸 확인했다.
14+
운명같은 프레임워크다.
15+
16+
## Jekyll 테마
17+
18+
[jekyll-theme-yat](https://github.com/jeffreytse/jekyll-theme-yat)을 커스텀해서 사용하고 있다. 시간이 괜찮을 때 테마 생성자에게 소정의 금액을 지원하고 나만의 테마로 바꿀 예정인데 내가 이 테마에서 가장 좋아했던 것은 커스텀 자유도다.
19+
테마를 커스텀 한다고 하여도 저장소에 출처를 남기도록 하자.
20+
21+
## 자주 사용하는 명령어 모음
22+
23+
```shell
24+
#기본 명령어
25+
26+
# 로컬 개발 서버 실행 (가장 많이 사용)
27+
bundle exec jekyll serve
28+
29+
# 개발 서버 + 자동 새로고침 + draft 포함
30+
bundle exec jekyll serve --livereload --drafts
31+
32+
# 특정 포트로 실행
33+
bundle exec jekyll serve --port 4001
34+
35+
# 빌드만 실행 (배포용)
36+
bundle exec jekyll build
37+
38+
# 빌드 + 상세 로그
39+
bundle exec jekyll build --verbose
40+
41+
#새 프로젝트/포스트 생성
42+
43+
# 새 Jekyll 사이트 생성
44+
jekyll new my-site
45+
46+
# 특정 테마로 생성
47+
jekyll new my-site --blank
48+
49+
# 새 포스트 생성 (플러그인 필요)
50+
bundle exec jekyll post "My New Post"
51+
52+
# 새 draft 생성
53+
bundle exec jekyll draft "My Draft Post"
54+
55+
#개발 시 유용한 옵션
56+
57+
# 증분 빌드 (변경된 파일만 빌드 - 속도 향상)
58+
bundle exec jekyll serve --incremental
59+
60+
# future 날짜 포스트도 표시
61+
bundle exec jekyll serve --future
62+
63+
# 모든 옵션 조합 (개발 시 추천)
64+
bundle exec jekyll serve --livereload --drafts --future --incremental
65+
66+
# 특정 환경으로 실행
67+
JEKYLL_ENV=production bundle exec jekyll build
68+
69+
#클린/초기화
70+
71+
# 빌드 캐시 삭제 후 재빌드
72+
bundle exec jekyll clean
73+
bundle exec jekyll build
74+
75+
# 의존성 설치/업데이트
76+
bundle install
77+
bundle update
78+
79+
# 특정 gem 업데이트
80+
bundle update jekyll
81+
82+
#디버깅
83+
84+
# 상세 로그 출력
85+
bundle exec jekyll serve --verbose
86+
87+
# 추적 모드 (매우 상세한 로그)
88+
bundle exec jekyll serve --trace
89+
90+
# 설정 확인
91+
bundle exec jekyll doctor
92+
93+
# 버전 확인
94+
bundle exec jekyll --version
95+
96+
#자주 쓰는 단축 명령어
97+
98+
# 가장 기본 (개발 시)
99+
bundle exec jekyll s
100+
101+
# livereload 포함
102+
bundle exec jekyll s -l
103+
104+
# 빌드
105+
bundle exec jekyll b
106+
107+
# 도움말
108+
bundle exec jekyll help
109+
bundle exec jekyll serve --help
110+
111+
#실전 팁
112+
113+
# 1. 일반 개발 시
114+
bundle exec jekyll serve --livereload
115+
116+
# 2. draft 작성 중
117+
bundle exec jekyll serve --livereload --drafts
118+
119+
# 3. 문제 발생 시 클린 후 재시작
120+
bundle exec jekyll clean && bundle exec jekyll serve
121+
122+
# 4. 프로덕션 빌드 (GitHub Pages 배포 전 확인)
123+
JEKYLL_ENV=production bundle exec jekyll build
124+
125+
# 5. 빌드 속도 느릴 때
126+
bundle exec jekyll serve --incremental --livereload
127+
```

_posts/2026-01-05-Shell.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
layout: post
3+
title: 3. Shell? Bash? Zsh?
4+
categories: study
5+
tags: [web]
6+
---
7+
8+
용어 정리
9+
10+
1. Shell (셸) - 일반적인 용어
11+
- 명령줄 인터페이스를 제공하는 프로그램 전체를 지칭
12+
- bash, zsh, fish 등을 모두 포함하는 개념
13+
- "터미널에서 shell을 사용한다"
14+
15+
2. zsh (Z Shell) - 구체적인 shell 종류
16+
- 현재 macOS 기본 shell (Catalina 10.15 이후)
17+
- bash의 기능 + 추가 편의 기능
18+
- "zsh을 사용한다"
19+
20+
3. bash (Bourne Again Shell)
21+
- 예전 macOS 기본 shell (Catalina 이전)
22+
- Linux에서 가장 많이 사용
23+
- "bash를 사용한다"
24+
25+
4. 터미널 (Terminal)
26+
- shell을 실행하는 GUI 애플리케이션
27+
- macOS의 Terminal.app, iTerm2 등
28+
29+
표현 방법
30+
31+
# 모두 맞는 표현
32+
"터미널에서 명령어 실행했어"
33+
"shell에서 jekyll 실행했어"
34+
"zsh에서 bundle exec 명령어 쳤어"
35+
"커맨드라인에서 작업했어"
36+
"CLI에서 실행했어"

0 commit comments

Comments
 (0)