블로그
-
git 한글 깨짐 해결: git status 한글 파일명 \354\225\210, 커밋 메시지·diff 깨짐 원인별 정리
git status에 한글 파일명이 \354\225\210처럼 나오는 core.quotepath, 윈도우 PowerShell 코드페이지, git log 커밋 메시지 깨짐, macOS NFD 파일명, CP949 파일 diff 깨짐을 증상별로 구분해 고칩니다.
-
git push rejected 해결: fetch first·non-fast-forward·refusing to merge unrelated histories·divergent branches
git push가 (fetch first), (non-fast-forward)로 거부되는 이유와 merge·rebase 해결 순서, unrelated histories, divergent branches 설정, force-with-lease, GH006 보호 브랜치까지 다룹니다.
-
MQTT 프로토콜과 발행-구독 메시징 모델 이해하기
MQTT의 Pub/Sub 구조와 Broker·Topic 개념, QoS 0/1/2 차이, Last Will·Retained Message 같은 실무 기능을 Python·Node.js 예제로 설명합니다.
-
TLS 프로토콜 심화 가이드 | 핸드셰이크·암호 스위트·TLS 1.3 키 유도
TLS 1.2와 1.3의 핸드셰이크 흐름 차이, 암호 스위트를 구성하는 키 교환·인증·대칭키·해시, 키 유도와 레코드 레이어, QUIC과의 결합, 인증서 체인 오류 진단과 mTLS 인증서 회전까지 설명합니다.
-
Vim이 안 꺼질 때부터 시작하는 Vi/Vim: 종료, 모드, 이동, 편집, 검색·치환
서버에서 Vim을 열었다가 빠져나오지 못하는 상황부터 시작해 상황별 종료 명령, Vi와 Vim의 차이, 노멀·입력·비주얼·명령 모드, hjkl과 단어·화면 단위 이동, 삭제와 변경, 검색·치환, 복사·붙여넣기까지 서버 작업에 필요한 기본기를 다룹니다.
-
CMake 에러 해결: 컴파일러·find_package·링커·캐시 문제를 단계별로 좁히는 법
CMake 에러를 configure·generate·build·실행 단계로 나눠 원인을 좁히는 방법을 정리합니다. CMake 4.0의 "Compatibility with CMake < 3.5 has been removed", FindBoost 제거, Conan 2 연동, undefined reference, 공유 라이브러리 로딩 실패까지 실제 에러 메시지 기준으로 다룹니다.
-
Git rebase interactive 사용법 | pick·squash·fixup·충돌 해결·실수 복구
PR을 올리기 전 지저분한 커밋을 git rebase -i로 정리하는 방법을 pick, squash, fixup, reword, edit 명령별로 보여줍니다. autosquash와 git add -p로 큰 커밋을 쪼개는 법, 리베이스 중 충돌 해결과 reflog 복구도 다룹니다.
-
FTP 프로토콜 실전 활용 | Active·Passive·FTPS·SFTP와 파일 전송 운영
FTP의 제어 채널과 데이터 채널이 따로 열리는 구조, Active와 Passive 모드에서 방화벽·NAT 때문에 전송이 실패하는 이유, lftp 클라이언트와 vsftpd chroot 설정, 평문 FTP 대신 FTPS나 SFTP로 옮길 때의 차이를 초급자 눈높이로 설명합니다.
-
C++ 반복자: 종류와 연산, iterator_traits, 범위 기반 for의 디슈가링
Input부터 Random Access까지 반복자 카테고리별로 허용되는 연산과 복잡도, iterator_traits와 C++20 iterator_concept, 범위 기반 for가 실제로 어떤 코드로 풀리는지, 그리고 무효화된 반복자와 end() 역참조 같은 버그를 예제로 설명합니다.
-
C++ count·count_if와 all_of·any_of·none_of로 조건 집계하기
std::count로 특정 값의 개수를 세고 count_if에 람다를 넘겨 조건별로 집계하는 방법, 구조체 필드 기준 카운트, all_of·any_of·none_of로 조건을 검사하는 법을 통계 유틸리티 예제와 함께 설명합니다.