Git 3

원격저장소에 올라간 git commit 되돌리기

원격 저장소(github, gitlab)에 올라간 commit 을 되돌리는 방법에는 두가지가 있다. 1. 로컬에서 되돌린 후(git reset), 그대로 원격 저장소에 강제로 push 하는 것 2. 되돌린 내역을 하나의 commit으로 쌓고(git revert), 이를 원격저장소에 push하는것 첫번째 방법은 혼자서는 괜찮으나 협업하는 경우 내가 되돌리기 전에 누군가 git pull해서 작업하고 올릴 경우 내가 돌렸던 내용 그대로 올라가게 된다. 그래서 2번 방법을 적용하였다. 1. commit 로그들을 확인 명령어 : git log 2. 되돌리고 싶은 commit으로 돌아간다 명령어 : git revert --no-commit HEAD~3.. -> 세번 이전 커밋으로 돌아갔다 3. 돌아온 사항을 새롭게..

VCS/Git 2021.11.06

git 원격저장소(github, gitlab)에 잘못 올라간 파일삭제

gitlab에 gitignore파일을 먼저 올렸어야 했는데 gitignore에 해당하는 파일(주로 설정파일들 - bin, .classpath, .project)들을 그대로 올려버렸을 경우 1. 로컬 파일 삭제 없이 원격 저장소에만 파일 삭제하기 위와 같이 파일일 경우 -> git rm --cached [파일이름] ex) git rm --cached .classpath 폴더일 경우 -> git rm --cached -r [폴더] ex) git rm --cached -r bin/ bin/ 은 bin폴더 이하 파일들을 모두 삭제한다는 소리 결과 -> bin은 upload목록에서 제외됨 2. 원격 저장소에 적용 - 변경된 사항을 commit git commit -m [커밋메시지] - 원격 저장소에 적용 git ..

VCS/Git 2021.11.05

LF will be replaced by CRLF or CRLF will be replaced by LF 에러

발생시점 cli 에서 git add할 때 에러메시지 LF will be replaced by CRLF in .gitignore. 발생원인 리눅스와 윈도우의 차이로, 한줄 끝을 어떻게 처리하는지가 달라서 그런 것. 유닉스 시스템에서는 한 줄의 끝이 LF(Line Feed) 윈도우에서는 CR(Carriage Return), LF(Line Feed)로 이루어지기 때문임. 나는 윈도우를 사용하고 있어서 LF will be replaced by CRLF 에러가 발생했다. 해결방법 git 이 지원하는 자동변환기능을 사용하는것 --> core.autocrlf 윈도우 git config --global core.autocrlf true ** --global은 전역변수로, 시스템 전체에 적용하고 싶은 게 아니면 빼도 된..

VCS/Git 2021.04.14