github를 사용하다 보면 실수로 API key와 같은 민감한 정보를 push해버리는 경우가 있다. github에서 해당 파일을 삭제하더라도 history에는 여전히 민감한 내용이 노출되고 있다. 해당 project를 private으로 전환할 수도 있겠지만 클라우드에 노출되어 있다는 점은 변함없다. 이 난감한 상황을 해결하기 위한 "민감한 history를 제거하는 방법 두 가지"를 정리해 보았다. 1. git filter-branch 명령어를 사용하여 히스토리 삭제git filter-branch --force --index-filter "git rm --cached --ignore-unmatch " --prune-empty --tag-name-filter cat -- --all이 명령어는 Git 저장소..
NEW
[ 언어·프레임워크/GitHub ]
[GitHub] git clone할때 인증 문제 >.<
2023-10-04 10:50:30
1. git clone 명령을 내렸는데 인증 실패!!! remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication. fatal: Authentication failed for (생략) git clone을 시도하였는데 위 와 같은 인증 실패 메시지가 표시되고 프로젝트 코드가 클론 되지 않았다. 2. token 발급/인증하여 해결 2.1. token 발급 깃허브에서 token을 발급받아 깃클론 명령에 적용하여 인증 문..
NEW
[ 언어·프레임워크/GitHub ]
[GitHub] The file is empty?? 커밋이 왜 안되지??
2023-05-28 12:16:29
1. 커밋이 왜 안되지?? NestJS 프로젝트를 생성하였더니 깃 데스크톱에서 [그림 1]과 같은 현상이 발생했다. 이 상태에서 커밋을 진행했는데 [그림 2]와 같이 에러가 발생했다. 2. 중첩된 .git이 문제! 문제의 원인은 부모 폴더(NestJS 프로젝트가 설치된 폴더)와 자식 폴더(NestJS 프로젝트 폴더) 둘 다 git이 초기화되었기 때문에 발생한 현상이었다. 따라서 자식 폴더의 ".git" 폴더를 삭제하면 정상적으로 커밋이 가능해진다. ".git"폴더는 "숨긴 항목"에 해당되므로 탐색기에서 "숨긴 항목"을 체크해야 한다. 이상에서 살펴본 문제는 부모 폴더와 자식 폴더 간에 중첩된 Git 저장소가 충돌한 것이 원이이었다. 자식 폴더의 ".git" 폴더를 삭제하면 문제가 해결되나 해당 폴더의 G..
NEW
[ 언어·프레임워크/GitHub ]
[GitHub] GitLab에서 GitHub 데스크톱을 사용하는 방법
2023-03-20 11:05:44
GitHub를 사용 중이었는데 이번에 시작한 프로젝트는 GitLab에서 협업하게 되었다. GitHub에는 GitHub Desktop이라는 GUI를 지원하는 편리한 툴이 있음에 반해 GitLab에는 없는 듯했다. 검색해 보니 GitHub Desktop에서 GitLab 프로젝트의 형상 관리를 할 수 있었다. GitLab의 프로젝트 https 링크를 GitHub 프로젝트 클론에 등록하려는데 GitLab의 ID/PW를 요구했다. 기존에 사용하던 정보를 입력했는데 클론에 실패했다. 알고 보니 PW에는 GitLab에서 생성한 액세스 토큰을 입력해야 했다. 아래 참고 자료를 통해 프로젝트 클론에 성공했다. 참고 자료 https://itnext.io/how-to-use-github-desktop-with-gitlab-..