지금은 Git 중...

김덕근·2023년 3월 30일
0

git

목록 보기
3/5

.gitignore 파일 생성

touch .gitignore

수정

vim .gitignore
i 수정 시작
esc -> :wq 나가기

.gitignore

>.metadata/
Servers/
*.class
*.classpath
/target/
/bin/
.DS_Store

Apply .gitignore

(프로젝트 중간에 .gitignore 적용)
아래의 git 명령들을 실행해주면 .gitignore의 파일들이 적용되어 원격 저장소에서 사라진다.

$ git rm -r --cached .
$ git add .
$ git commit -m "Apply .gitignore"
$ git push

로컬 브랜치 삭제

git branch -D 로컬 브랜치 이름

원격 브랜치 삭제

git push origin --delete 원격 브랜치 이름
git push origin :원격 브랜치 이름


commit -m 작성 요령

기능
"Feat: 새로운 기능 추가"
"Fix: 버그를 고친 경우"
"Design: CSS 등 사용자 UI 디자인 변경"
"!BREAKING CHANGE: 커다란 API 변경의 경우"
"!HOTFIX: 급하게 치명적인 버그를 고쳐야하는 경우"

개선

"Style: 코드 포맷 변경, 세미 콜론 누락, 코드 수정이 없는 경우"
"Refactor: 프로덕션 코드 리팩토링"
"Comment: 필요한 주석 추가 및 변경"

그외

"Docs: 문서를 수정한 경우"
"Test: 테스트 추가, 테스트 리팩토링(프로덕션 코드 변경 X)"
"Chore: 빌드 태스트 업데이트, 패키지 매니저를 설정하는 경우(프로덕션 코드 변경 X)"
"Rename: 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우:
"Remove: 파일을 삭제하는 작업만 수행한 경우"


메시지 구조

먼저 커밋 메시지는 크게 제목, 본문, 꼬리말 세 가지 파트로 나누고, 각 파트는 빈줄을 두어서 구분합니다.

type(옵션): [#issueNumber - ]Subject  // -> 제목

body(옵션) //  -> 본문 

footer(옵션) // -> 꼬리말

예시

Feat: "추가 로그인 함수"

로그인 API 개발

Resolves: #123
Ref: #456
Related to: #48, #45
  1. 꼬리말은 optional이고 이슈 트래커 ID를 작성합니다.
  2. 꼬리말은 "유형: #이슈 번호" 형식으로 사용합니다.
  3. 여러 개의 이슈 번호를 적을 때는 쉼표로 구분합니다.
  4. 이슈 트래커 유형은 다음 중 하나를 사용합니다.
    • Fixes: 이슈 수정중 (아직 해결되지 않은 경우)
    • Resolves: 이슈를 해결했을 때 사용
    • Ref: 참고할 이슈가 있을 때 사용
    • Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)

커밋 메시지 Emoji

Emoji Description
🎨 코드의 형식 / 구조를 개선 할 때
📰 새 파일을 만들 때
📝 사소한 코드 또는 언어를 변경할 때
🐎 성능을 향상시킬 때
📚 문서를 쓸 때
🐛 버그 reporting할 때, @FIXME 주석 태그 삽입
🚑 버그를 고칠 때
🐧 리눅스에서 무언가를 고칠 때
🍎 Mac OS에서 무언가를 고칠 때
🏁 Windows에서 무언가를 고칠 때
🔥 코드 또는 파일 제거할 때 , @CHANGED주석 태그와 함께
🚜 파일 구조를 변경할 때 . 🎨과 함께 사용
🔨 코드를 리팩토링 할 때
☔️ 테스트를 추가 할 때
🔬 코드 범위를 추가 할 때
💚 CI 빌드를 고칠 때
🔒 보안을 다룰 때
⬆️ 종속성을 업그레이드 할 때
⬇️ 종속성을 다운 그레이드 할 때
⏩ 이전 버전 / 지점에서 기능을 전달할 때
⏪ 최신 버전 / 지점에서 기능을 백 포트 할 때
👕 linter / strict / deprecation 경고를 제거 할 때
💄 UI / style 개선시
♿️ 접근성을 향상시킬 때
🚧 WIP (진행중인 작업)에 커밋, @REVIEW주석 태그와 함께 사용
💎 New Release
🔖 버전 태그
🎉 Initial Commit
🔈 로깅을 추가 할 때
🔇 로깅을 줄일 때
✨ 새로운 기능을 소개 할 때
⚡️ 도입 할 때 이전 버전과 호환되지 않는 특징, @CHANGED주석 태그 사용
💡 새로운 아이디어, @IDEA주석 태그
🚀 배포 / 개발 작업 과 관련된 모든 것
🐘 PostgreSQL 데이터베이스 별 (마이그레이션, 스크립트, 확장 등)
🐬 MySQL 데이터베이스 특정 (마이그레이션, 스크립트, 확장 등)
🍃 MongoDB 데이터베이스 특정 (마이그레이션, 스크립트, 확장 등)
🏦 일반 데이터베이스 별 (마이그레이션, 스크립트, 확장명 등)
🐳 도커 구성
🤝 파일을 병합 할 때

profile
안녕하세요!

0개의 댓글