728x90 반응형 dev tools/Git7 [Git] Git submodule CLI 배경 다른 프로젝트의 기능을 앱에 추가하는 방법으로 모노레포 방식을 사용할 수 있지만, 각 프로젝트를 독립적으로 관리해야 하는 경우에는 적합하지 않다.Git Submodule은 메인 프로젝트에서 외부 링크 형태로 서브 프로젝트를 연결해 두었다가, 필요할 때 최신 변경 사항을 가져와 작업한다.이 방식은 서브 프로젝트의 별도 사본을 만들지 않으며, 원래 저장소의 최신 상태를 유지하면서 개발을 진행할 수 있게 해줍니다. 서브 프로젝트는 독립적으로 버전 관리를 유지하면서도, 메인 프로젝트와 쉽게 통합할 수 있습니다. 노드 프로젝트 submodule 내부 구조main-project/├ src/└ submodules/ # 서브모듈들을 모아두는 디렉토리 ├── my-submodule/ .. 2024. 9. 27. [Git] Git 명령어 CLI 정리 개요각 명령어와 예제를 통해 Git 작업을 보다 쉽게 이해하고 사용할 수 있게 자주 사용하는 cli를 정리해보자 저장소 관리1. 새로운 저장소 생성- 현재 폴더에서 새로운 git 저장소를 생성$ git init 2. 기존 소스코드 다운로드/복제- 기존 소스코드를 로컬 저장소에 다운로드 및 복제, 원격 서버 저장소도 복제 가능$ git clone # 로컬 저장소 복제$ git clone /로컬/저장소/경로# 원격 저장소 복제$ git clone 사용자명@호스트:/원격/저장소/경로3. 원격 저장소 추적 확인$ git remote -v4. upstream 원격 저장소 설정$ git remote add upstream 소스 관리1. 특정 파일 추가$ git add // git add filename.txt .. 2024. 6. 17. [Git] 좋은 커밋 메시지 작성하기, 정책 만들기(git, commit, convention) 커밋 메시지 규칙제목은 영문 기준 50자 , 한글 기준 25자 이내제목은 명령문, 부정명령문 형식 사용제목 첫글자를 대문자로동명사보다 명사를 사용 (ing X)제목 끝에 . 금지제목과 본문을 한 줄 띄워 분리하기본문은 영문 기준 72자 , 한글 기준 36자 마다 개행 커밋 메시지 예)Fix member of values optional in ViewPropTypes[수정] 회원 가입의 버그를 수정 Refactor subsystem X for readabilityUpdate getting started documentationRemove deprecated methodsRelease version 1.0.0Merge pull request #123 from user/branch Github 이슈를 종료.. 2024. 5. 22. [Git] Git Branch 전략- gitflow 와 네이밍 gitflow란?Git Branch 전략 중 하나로 아래 네이밍을 사용하여 작업하는 방식이다. gitflow의 5가지 대표 브랜치master제품으로 출시될 수 있는 브랜치기준이 되는 브랜치로 제품을 배포하는 브랜치develop다음 출시 버전을 개발하는 브랜치기능 개발을 위한 브랜치들을 병합하기 위해 사용하기도 한다개발 브랜치로 개발자들이 이 브랜치를 기준으로 각자 작업한 기능들을 Mergefeature : 단위 기능을 개발하는 브랜치로 기능 개발이 완료되면 develop 브랜치에 Mergerelease : 배포를 위해 master 브랜치로 보내기 전에 먼저 QA(품질검사)를 하기위한 브랜치hotfix : master 브랜치로 배포를 했는데 버그가 생겼을 떄 긴급 수정하는 브랜치 Branch 네이밍 규칙.. 2023. 12. 27. [Git] 지워진 커밋 복구하기(reflog), HEAD 브랜치 삭제 복구하기 git reset --head 로 삭제(초기화)된 커밋 되돌리기 개요origin branch로 HEAD가 있길래..HEAD 브랜치를 삭제했었다.삭제했을때, 로컬초기화 옵션을 선택했던거 같다.. 결과적으로는 커밋 5건이 이력에 아예 없어져버렸고,(push 까지 한 상태였음)코드는 오전 코드로 되돌아가고 오후 작업 코드들이 초기화 되어 있었다. 소스트리를 사용하고 있는데 소스트리 History에도 메시지 이력이 아예 존재하지 않았고,gitHub에도 PR 에 불러와 지지 않았다... 이때 시도한 해결 방법은 다음과 같다. 복구방법 1. 일단 혹시 모르니 기억에 나는 대로 로컬소스를 백업한다. 2. 충돌을 방지하여, 로컬 소스 수정내용을 초기화 한다. 3. 저장소의 터미널로 들어가서 커밋 이력을 조회한다.-.. 2023. 12. 19. [Git] 깃 저장소에 commit, merge 코드 복구 하기(소스트리, gitbash) Merge한 파일들을 복구하고 싶은 경우가 있다. 예) - origin 작업 내용을 직접 upstream에 푸쉬한 경우 - PR 리뷰 중 실수로 머지한 경우 - commit, push한 파일을 수정하거나, 취소하고 싶은 경우 Merge를 되돌리는 방법 중 revert, force 를 사용하여, 코드를 복구 해보자! * 해당 작업은 저장소를 통째로 날리거나 * 커밋한 코드가 날라가거나 * 협업자들 버전이 충돌될수 있다. !!! 개인 작업용, 혹은 진짜 필요 시에만 실행하는 것이 좋다 !!! !!! 커밋 / push 전에는 반드 시 저장소와 변경내용을 확인 하는 습관을 가지자 !!! force - 강제 push한다는 말이다. - push force는 원격 저장소의 내용이 로컬 저장소의 내용과 일치하도록 원격.. 2023. 12. 18. [Git] 로컬에서 변경한 파일명이 깃허브에서 적용 안되는 이슈 로컬에서 변경한 파일명이 git에는 반영되지 않는다. git은 대소문자를 구분하지 않기 때문에 대소문자만 변경하였을 경우에는 에러가 발생할 수 있다. 이 경우는 직접 파일명을 변경해주면 된다.1. gitHub에서 파일명 변경 2. cmd 파일명 변경git mv oldName newName// 대소문자 변경하는 경우 2번 작업 필요$ git mv foo temp$ git mv temp Foo 2023. 12. 16. 이전 1 다음 728x90 반응형