직접 만든 소프트웨어, 두 가지 개발 기록 구현 구조와 적용 범위, 확인한 기능과 남은 한계를 함께 기록합니다. MediaMTX 스트리밍 제어 서버Docker Compose 구성과 파일·라이브·멀티캐스트 송출 RTSP CCTV 관제·분석 프로그램관제 그룹, 영역·출입선, 이벤트 이력을 연결하는 구조 오류해결4 curl은 성공인데 HTTP 404일 때: 종료 코드와 응답 상태를 따로 확인 curl의 종료 코드 0만으로 HTTP 요청이 업무상 성공했다고 판단하지 마세요. HTTP 404 응답을 정상적으로 받았을 때 기본 curl은 0으로 끝날 수 있습니다. HTTP 오류를 실패로 처리하면서 본문도 남기려면 지원 버전의 --fail-with-body와 응답 코드를 함께 확인하세요.원인: 통신 처리 결과와 HTTP 의미를 하나로 본다프로세스가 응답을 받는 데 성공했다는 판단과, 서버가 요청한 자원을 제공했다는 판단은 다릅니다. HTTP 4xx·5xx와 연결·DNS·TLS 실패를 같은 오류로 처리하면 잘못된 재시도나 배포 성공 판정으로 이어질 수 있습니다. 자동화에서는 종료 상태와 HTTP 코드와 본문을 각각 기록하는 편이 원인을 좁히기 쉽습니다.조회 방식HTTP 404의 처리본문 처리기본 cu.. 2026. 10. 23. git diff가 비어 있는데 변경이 남을 때: 작업 트리·인덱스·HEAD 비교 git add 뒤 일반 git diff가 비어 있다면 변경이 사라졌다고 판단하지 말고 git diff --cached를 확인하세요. 기본 diff는 작업 트리와 인덱스를, --cached는 인덱스와 HEAD를 비교합니다. 먼저 상태와 비교 범위를 읽고 되돌리기 명령은 사용하지 않는 것이 안전합니다.원인: diff가 비교하는 두 상태를 놓친다같은 파일도 작업 트리, 스테이징 영역인 인덱스, 마지막 커밋인 HEAD에 서로 다른 내용이 있을 수 있습니다. git add는 이후 커밋할 내용을 인덱스에 올립니다. 그 뒤 작업 파일을 다시 바꾸지 않았다면 기본 diff는 비어 있을 수 있지만, 인덱스와 HEAD의 차이는 남습니다.조회 명령비교 범위읽을 의미git diff작업 트리 ↔ 인덱스아직 스테이징하지 않은 수.. 2026. 10. 23. gitignore가 적용되지 않을 때: 추적 파일과 규칙 일치를 따로 확인 이미 Git이 추적하는 파일에는 .gitignore를 추가해도 추적이 자동 해제되지 않습니다. 먼저 git ls-files로 추적 상태를 보고, git check-ignore로 규칙을 확인하세요. 두 질문을 섞으면 정상 동작을 캐시 오류로 오해하기 쉽습니다.원인: 추적 상태와 무시 규칙은 다른 문제다무시 규칙은 의도적으로 추적하지 않을 파일에 사용합니다. 이미 인덱스에 있는 파일을 계속 수정하고 있다면 규칙을 추가해도 변경이 보일 수 있습니다. 먼저 저장소 루트와 대상 경로를 확인하고, 파일 내용에 비밀값이 있으면 출력이나 화면 공유에 포함하지 마세요.관찰확인할 질문다음 단계ls-files에 파일 표시이미 추적 중인가추적 유지 필요성 검토미추적인데 규칙 불일치패턴·위치가 맞나check-ignore 진단규.. 2026. 10. 22. Git unrelated histories 해결: 원격 주소와 공통 조상부터 확인 refusing to merge unrelated histories는 두 이력의 공통 조상을 찾지 못한 상황에서 나타날 수 있습니다. 먼저 저장소·원격 주소·비교 대상이 맞는지 확인하세요. 의도적으로 독립된 이력을 합치는 경우에만 --allow-unrelated-histories를 검토하고, 원본 보존과 충돌 검토를 먼저 준비합니다.원인: 같은 파일이 있어도 같은 커밋 이력은 아니다로컬과 원격에서 각각 새 저장소를 초기화했거나 다른 저장소를 연결하면 파일 이름이 비슷해도 이력이 독립적일 수 있습니다. 오류를 없애기 위해 곧바로 강제 푸시하거나 .git을 삭제하면 보존해야 할 기록을 잃을 수 있습니다.상태우선 확인피할 조치원격 주소 불일치저장소 선택무조건 병합이력 제한 가능clone 범위독립 이력 단정독립.. 2026. 10. 21. 이전 1 다음