본문 바로가기

GIT15

로컬 Git 레포지토리 정리 및 최적화 가이드 Git 레포지토리는 프로젝트가 진행됨에 따라 크기가 커지고, 오래된 객체들이 쌓이면서 관리와 성능 문제가 발생할 수 있습니다. 특히 로컬 레포지토리에서 이러한 문제를 방지하기 위해 정기적으로 레포지토리를 정리하고 최적화하는 것이 중요합니다.아래에서는 로컬 Git 레포지토리를 최적화하고 정리하는 방법을 단계별로 설명하겠습니다.1. 로컬 레포지토리 최적화Git의 gc(Garbage Collection) 명령어는 불필요한 데이터나 오래된 객체를 정리하여 레포지토리를 최적화하는 데 사용됩니다.명령어:git gc --aggressive --prune=now옵션 설명:--aggressive: Git의 garbage collection을 더 강력하게 수행하여 디스크 공간 사용을 최소화합니다. 성능은 다소 느려질 수 .. 2025. 1. 23.
git log - 콘솔에서 그래프로 깃로그 확인 git log --graph --pretty=oneline --abbrev-commit --all 2023. 4. 14.
git 특정 commit 삭제 - rebase 위 이미지에서 f2349010 커밋을 삭제하고자 한다. 그 이전 커밋위치(c09e7d89)가 필요하다 $ git checkout -t origin/develop # -t: 로컬의 동일한 이름의 branch를 생성하면서 해당 branch로 checkout $ git rebase -i c09e7d89 # 삭제하고자 하는 이전 커밋의 위치를 넣어준다 pick a5e36918 pick d02d135d pick 94a9c6aa d f2349010 # pick -> d 로 변경 :wq 하면 해당 커밋이 삭제된 local develop 브랜치가 생성되었다, 그대로 포스 푸시하면 원하는 커밋이 삭제된 브랜치가 원격저장소에 적용된다 $ git push origin develop -f 2023. 4. 13.
The Joel Test : 좀 더 좋은 프로그래밍을 위한 12단계 더보기 글 : Joel Spolsky 번역 : B.K. Chung 정봉겸 감수 : Jang Han Goo 구장한 2000년 8월 9일 SEMA에 대해서 들어보신 적이 있습니까? 소프트웨어 팀이 얼마나 잘하는지를 재는 나름대로 복잡한 시스템입니다. 앗, 아니! 그 링크를 누르지 마세요. SEMA를 "이해"만 하는데 아마 6년정도가 걸릴것입니다. 그래서 소프트웨어 팀이 얼마나 좋은지 등급을 매길 수 있는 - 좀 무책임하고 되는대로의 - 자체적인 버젼의 테스트를 만들었습니다. 이 테스트의 장점은 3분정도밖에 걸리지 않는다는 것입니다. 절약되는 시간으로 의대에 가서 공부할 수도 있을 것입니다. The Joel Test Source Control(소스 컨트롤)을 사용하십니까? 한번에 빌드를 만들어낼 수 있습니까?.. 2023. 4. 12.
git push 전에 할일 - PR 시 conflict PR 후 conflict 가 나면 웹상에서 확인/수정하기가 쉽지 않다, 로컬에서 미리하는 방법 정리한다 전체 fetch 받기 origin/develop 으로 rebase 하기 - conflict 발생 : 로컬에서 충돌을 해결하고 git push 그러면 PR하고 머지 시 충돌이 발생하지 않는다. 어디에서 충돌을 해결하느냐의 문제이긴 한데, 나는 로컬에서 해결이 IDE로 보면서 훨 편해서, 이렇게 하고 있다. > git fetch -a && git rebase origin/develop && git push --set-upstream 2023. 1. 25.
squash - git commit을 깔끔하게 push 전에 깔끔하게 하나의 커밋으로 올리고 싶을 때 사용 local master branch 최신화 # pull local master $ git checkout master $ git pull origin master # rebase $ git rebase -i master mybranch squash pick last commit pick -- pick -- pick -- pick first commit 처음 pick 만 두고 나머지는 s (squash)로 수정한다 pick last commit s -- s -- s -- s first commit conflict 발생 conflict 가 해결될 때까지 1,2,3을 반복 # conflict 나는 부분 수정 # 1 $ git add files # 2.. 2020. 6. 22.