본문 바로가기

Develop/Git13

[git] git branch 삭제하기 프로젝트를 진행하다면 수많은 브랜치를 만들고 작업을 진행하게 된다. 브랜치를 계속 만들다 보면 이미 반영된 브랜치도 로컬에 남아있게 된다. 이미 정상적으로 반영된 브랜치이니 해당 브랜치는 유지할 필요가 따로 없다. 그래서 아래 명령어를 통해 브랜치를 삭제 해줘야한다. 로컬 브랜치 삭제하기 git branch -d 위의 명령어를 날렸을 때, 만약 브랜치에 병합되지 않은 변경사항이나 푸시되지 않은 커밋이 있으면 삭제가 되지 않는다. 브랜치가 가지고 있는 커밋이 다른 브랜치나 저장소에 기록되어 있지 않을 경우 커밋 히스토리가 손실되는 것을 git 이 막기 때문이다. 이럴때는 아래와 같이 강제로 삭제할 수도 있다. git branch -D 원격 브랜치 삭제하기 원격 브랜치는 아래의 명령어로 삭제가 가능하다. g.. 2023. 7. 28.
[git] commit message 를 잘 작성하는 방법 새로운 회사에 입사하고, 깃의 새로운 커밋 컨벤션에 적응하느라 애를 썼다. 그래도 팀에서 정해진 컨벤션을 지키며 개발하니, 내가 어떤 내용에 대한 개발을 할지 명확하게 구분이 가능하고, 또한 동료의 산출물을 리뷰하는데에도 큰 도움이 됐다. 오늘은 그래서 깃 커밋 메시지에 대해 정리를 해두려한다. 커밋 메시지를 잘 써야하는 이유 1. 일관적이고 명확한 내용이 들어간 커밋 메시지는 다른 개발자가 산출물을 더 잘 이해할 수 있도록 돕는다. 2. 잘 작성된 커밋 메시지는 코드에서 문제가 발생했을 때, 더 쉽고 편하게 디버깅이 가능하게 한다. 3. 잘 작성된 커밋 메시지는 프로젝트의 맥락을 이해하는데 도움을 준다. 즉 해당 프로젝트에서 함께 작업하는 다른 개발자와 본인에게 변경 사항에 대한 컨텍스트를 전달한다. .. 2023. 5. 30.
[git] untracked file 삭제하기 오랜만에 글을 쓴다. 요즘 Git을 이용해서 프로젝트를 하는데, 아래 그림처럼 Untracked File 이 계속 노출되어 있다. Tracked File 과 Untracked File Git에서는 두가지 형태의 파일이 존재한다. Tracked File Tracked File 은 말그대로 Git에서 관리해주는 파일을 의미한다. Tracked File 은 세부적으로 세가지 상태로 나뉘어진다. 1.Unmodified : 파일이 수정되지 않은 상태를 의미. 파일이 최근에 저장된 상태 그대로라고 보면됨 2.Modified : 파일이 수정된 상태를 의미. 3. Staged: 파일을 저장할 예정인 상태 이 세가지의 경우가 Git에 의해 관리되고 있는 파일, 즉 Tracked File 이다. Untracked FIle.. 2022. 7. 14.
[git] git 에서 Untracked files 제거하기 git을 다루다보면 ... Untracked 파일을 제거하고 싶은 욕구가 막 생길때가 있다. 나도 프로젝트를 하던 중에.. 이파일을 지워야할 일이 있어서 이렇게 글로 정리해둔다. 방법은 간단하다. git clean -f 이 명령어를 날리면 쉽게 삭제할 수 있다. 만약 디렉토리도 같이 날려버리려면 ..! git clean -fd 이 명령어를 날려주면 된다. 그런데 이렇게 그냥 날려버리면 ... 날리면 안되는 파일도 날려버릴 우려가 있다. 이때 아래 명령어를 날려보자. git clean -fd --dry-run 이명령어를 날리면 제거예정인 파일을 알려주는데 .. 이때 제거하지 않을 파일은 미리 stage처리를 해주면 깔끔하게 제거할 파일만 제거하는게 가능해진다. 끝. 2021. 6. 29.
[Git] Git 동작 방식 쉽고 구체적으로 설명 (Git 초보자 대환영) 하이 ~~ 오늘 오랜만에 글을 쓴다. 회사에 신입분들이 많이 들어오고 올때 마다 Git 동작방식에 대해 설명을 해주곤 하는데... 시간이 난 김에 그 과정을 쭉 한번 정리해놓으면 좋을듯 하여, 이렇게 글을 쓴다. 일단 오늘은 GitHub로 설명을 할거고.. 설명을 위해 이렇게 프로젝트도 하나 임시로 만들었다. 먼저 우리는 서버의 레퍼지토리를 만들어주기 전에 클라이언트 단에서 레퍼지토리를 만들어줘야하는데 이 과정이 git init 이다. git init 나는 gittest라는 directory를 하나 만들어서 거기 git init 으로 로컬 레퍼지토리를 하나 만들었다. 다음은 우리가 만들어 놓은 git local repository를 sever 의 repository (reomte repository) 와.. 2021. 3. 1.
[Git] github 사용 중, fatal: 'origin' does not appear to be a git repository fatal: Could not read from remote repository. 에러 떴을 때 최근에 회사 일이 너무 너무 바빠서, 개인 git 으로 소스코드를 거의 못올리다가.. 오랜만에 코드를 올리려다. 아래와 같은 에러를 맞이 했다.. 당황하지말고 아래와 같은 과정을 거쳐 해결하자. 먼저 원격 연결이 어떻게 되어있는지 확인해보자. git remote -v 오 ... 원인을 찾은것 같다 ㅎㅎㅎ 아무런 연결이 되어 있지 않은걸 볼 수 있다. 그렇다면 연결을 해주면 된다. (만약에 origin 말고 다른 이름으로 연결이 되어 있으면 삭제해주고 다시 연결해줘도 된다. git remote remove [이름] 자 다음은 git 저장소를 다시 연결해주자 ! git remote add origin [git 저장소 url] 이후에 push나 pull 을 해보면 잘되는걸 확인할 수 있다. 2021. 2. 12.
[Git] 원격 repository 와 연결하기 Git 서버에 레퍼지토리를 만들고 나서, Commit 을 쳐주기전에 해줘야할게 있다. 먼저 local repository 의 위치를 정해주고,거기에 git을 초기화 해줘야한다. git init 자 이렇게 초기화 한 뒤에는 remote repository 와 연결을 해줘야 한다. 하는 방법은 아래와 같다. git remote add origin [원격 repository url 주소] 마지막으로 잘 연결됐는지 확인해보자. git remote -v 이렇게 하면 아주 간단하게, 원격 레퍼지토리와 연결할 수 있다. 2020. 6. 14.
[Git] .gitignore 파일 적용하기 Git을 이용해 프로젝트를 프로젝트를 할때 .gitignore 파일을 설정하고 적용하는 것은 중요한 일이다. 어떤 사람은 Mac에서 어떤사람은 윈도우 에서 또 어떤사람은 이클립스에서 어떤사람은 Intellij 에서 ... 이렇게 각자만의 환경에서 개발을하고 Git 서버 레퍼지토리에 소스를 푸쉬한다. 이때 각자의 환경에 맞게 설정된 내용들은 Git 서버에 올라가서는 안된다. 만약 이러한 내용이 올라간다면 누군가 푸시할때마다 해당 설정바뀌기 때문이다. 이걸 막기 위해 해주는 것이 바로 .gitignore 파일 적용이다. 먼저 .gitignore 파일을 만들어주자. vi .gitignore 나는 스프링 부트 (maven) 프로젝트를 만들거여서 관련 .gitignore 파일은 아래와 같다. # Eclipse ... 2020. 5. 29.
[Git] rebase를 활용한 Commit 두 개 합치기 급하게 올린 임시 커밋하나가 있는 줄 깜박하고 새로운 커밋 하나를 서버에 푸쉬해버렸다.. 이러한 커밋을 합치는 방법은 없을까?.. 물론 !! ㅎㅎ 있다 !! 있으니깐 오늘 글을 쓰고 있겠지~~ 바로... 우리는 rebase를 활용하면 된다. 구체적인 방법은 아래와 같다. git rebase -i HEAD~~ 음.. 일단 -i 는 interactive의 약어인데 말그대로 git rebase를 대화형으로 실행하겠다는 말이다. 이 명령어를 수행하면 ~ 이 두개니깐 이전의 두개의 커밋들을 출력하고, 사용자는 rebase를 하기전에 그 리스트를 하나로 합칠 수 있다. 즉 이전 커밋의 히스토리를 바궈버릴수 있다는 말이다. 아무튼 위의 명령어를 치면 아래의 모습처럼 커밋들이 불려와 지는걸 확인할 수 있다. 합쳐줄 커.. 2020. 5. 21.