README.md 업데이트

This commit is contained in:
kkt
2026-06-19 11:00:36 +09:00
parent 5103a3122d
commit c924321b27
+223 -124
View File
@@ -1,77 +1,95 @@
# 한세로 Git 저장소 관리 규칙 # 한세로 Git 저장소 관리 규칙
한세로 Git 저장소는 소스 코드 이력 관리와 협업을 위한 공간입니다. 한세로 Git 저장소는 프로그램 소스 코드와 수정 이력 관리하기 위한 공간입니다.
NAS 폴더 구조는 기존처럼 유지하되, Git 저장소는 프로그램 단위로 생성합니다. 기존 NAS 폴더 구조는 그대로 유지하되, Git 저장소는 프로그램 단위로 생성합니다.
--- ---
## 1. 기본 원칙 ## 1. 기본 원칙
* Git에는 소스 코드만 올린다. * 저장소는 프로그램 단위로 생성한다.
* 설치파일, 실행파일, 빌드 결과물, 대용량 데이터는 올리지 않는다. * 저장소 이름은 영어 소문자, 숫자, 하이픈만 사용한다.
* 저장소는 고객사/공장/프로그램 단위로 구분한다.
* 저장소 이름은 영어, 숫자, 하이픈만 사용한다.
* 저장소 설명은 한글로 작성한다. * 저장소 설명은 한글로 작성한다.
* 설치파일, 실행파일, 빌드 결과물, 대용량 데이터는 Git에 올리지 않는다.
* 실제 현장 설정값, 비밀번호, 인증서, API Key는 Git에 올리지 않는다.
--- ---
## 2. 저장소 이름 규칙 ## 2. 대분류 규칙
저장소 이름은 아래 형식을 사용한다. 저장소 이름의 첫 번째 항목은 대분류 코드로 작성한다.
| 대분류 | 의미 |
| ------- | ------------------ |
| hmc | 현대자동차 |
| kmc | 기아자동차 |
| hansero | 한세로 사내 |
| etc | 기타 고객사 |
기타 고객사는 `etc` 뒤에 고객사명을 소분류로 작성한다.
예:
```text ```text
번호-고객사-공장-프로그램명 etc-mobis-anyang-assembly1-vision-inspection
``` etc-sampyo-cheongju-silo-level-inspection
etc-kmmg-georgia-assembly1-vision-inspection
예시:
```text
01-hmc-ulsan-bolt-inspection
02-kia-gwangju-misassembly-inspection
03-hmc-jeonju-vision-system
98-internal-hai-studio
98-internal-groupware
``` ```
--- ---
## 3. 번호 규칙 ## 3. 저장소 이름 형식
| 번호 | 구분 | ### 현대자동차 / 기아자동차
| -- | ------------ |
| 00 | 의왕 및 남양 연구소 | ```text
| 01 | 현대자동차 울산공장 | 대분류-지역-공장구분-프로그램명
| 02 | 기아자동차 광주공장 | ```
| 03 | 현대자동차 전주공장 |
| 04 | 해외 공장 | 예:
| 10 | 삼표 시멘트 청주 공장 |
| 11 | 안양 모비스 | ```text
| 12 | 중국 광저우 | hmc-ulsan-assembly2-bolt-inspection
| 13 | 체코 모비스 | hmc-jeonju-body1-underbody-inspection
| 80 | KMMG | kmc-gwangju-assembly1-misassembly-inspection
| 97 | 통합 / 공통 | ```
| 98 | 사내 |
| 99 | 기타 | ### 한세로 사내 / 공통 개발
```text
hansero-프로그램명
```
예:
```text
hansero-hai-studio
hansero-groupware
hansero-chat
hansero-visioncore-sdk
hansero-ai-runtime
```
### 기타 고객사
```text
etc-고객사-지역-공장구분-프로그램명
```
예:
```text
etc-mobis-anyang-assembly1-vision-inspection
etc-sampyo-cheongju-silo-level-inspection
etc-kmmg-georgia-assembly1-vision-inspection
```
--- ---
## 4. 고객사 약어 ## 4. 지역 코드
| 고객사 | 약어 | | 지역 | 코드 |
| ------- | -------- | | ------ | --------------- |
| 현대자동차 | hmc |
| 기아자동차 | kia |
| 모비스 | mobis |
| 삼표시멘트 | sampyo |
| 한세로 사내 | internal |
| 공통 / 통합 | common |
---
## 5. 공장 / 지역 약어
| 지역 / 공장 | 약어 |
| ------- | --------------- |
| 울산 | ulsan | | 울산 | ulsan |
| 전주 | jeonju | | 전주 | jeonju |
| 광주 | gwangju | | 광주 | gwangju |
@@ -81,15 +99,58 @@ NAS 폴더 구조는 기존처럼 유지하되, Git 저장소는 프로그램
| 청주 | cheongju | | 청주 | cheongju |
| 중국 광저우 | china-guangzhou | | 중국 광저우 | china-guangzhou |
| 체코 | czech | | 체코 | czech |
| 미국 조지아 | georgia |
| 해외 | overseas | | 해외 | overseas |
해외 공장은 별도 대분류를 만들지 않고 지역 코드에 국가 또는 도시명을 포함한다.
예:
```text
hmc-china-guangzhou-assembly1-vision-inspection
kmc-georgia-assembly1-vision-inspection
etc-mobis-czech-assembly1-vision-inspection
```
---
## 5. 공장구분 코드
| 공장 구분 | 코드 |
| ----- | ------------ |
| 의장 | assembly |
| 차체 | body |
| 도장 | paint |
| 프레스 | press |
| 엔진 | engine |
| 변속기 | transmission |
| 배터리 | battery |
| 품질 | quality |
| 연구소 | research |
| 사무/관리 | office |
공장 번호가 있으면 공장구분 뒤에 숫자를 붙인다.
예:
```text
assembly1
assembly2
body1
body2
paint1
engine1
research
office
```
--- ---
## 6. 프로그램명 작성 규칙 ## 6. 프로그램명 작성 규칙
프로그램명은 기능을 알 수 있게 작성한다. 프로그램명은 기능을 알 수 있게 작성한다.
: 예:
```text ```text
bolt-inspection bolt-inspection
@@ -97,31 +158,111 @@ pin-inspection
label-inspection label-inspection
underbody-inspection underbody-inspection
misassembly-inspection misassembly-inspection
bead-inspection
silo-level-inspection
vision-system vision-system
mes-interface mes-interface
groupware groupware
chat
hai-studio hai-studio
hansero-chat visioncore-sdk
ai-runtime
``` ```
--- ---
## 7. 저장소 설명 작성 규칙 ## 7. 저장소 이름 예시
저장소 설명은 한글로 작성한다. ### 현대자동차
예시: ```text
hmc-ulsan-assembly2-bolt-inspection
hmc-ulsan-body2-pin-inspection
hmc-jeonju-body1-underbody-inspection
hmc-namyang-research-vision-system
```
| 저장소명 | 설명 | ### 기아자동차
| ------------------------------------- | ---------------------- |
| 98-internal-hai-studio | 한세로 AI 트레이너 | ```text
| 98-internal-groupware | 한세로 그룹웨어 | kmc-gwangju-assembly1-misassembly-inspection
| 01-hmc-ulsan-bolt-inspection | 현대자동차 울산공장 볼트 검사 프로그램 | kmc-gwangju-body1-vision-inspection
| 02-kia-gwangju-misassembly-inspection | 기아자동차 광주공장 오장착 검사 프로그램 | ```
### 한세로
```text
hansero-hai-studio
hansero-groupware
hansero-chat
hansero-visioncore-sdk
hansero-ai-runtime
```
### 기타 고객사
```text
etc-mobis-anyang-assembly1-vision-inspection
etc-sampyo-cheongju-silo-level-inspection
etc-kmmg-georgia-assembly1-vision-inspection
```
--- ---
## 8. Git에 올릴 것 ## 8. 저장소 설명 작성 규칙
저장소 설명은 한글로 작성한다.
설명에는 고객사, 지역, 공장, 프로그램 기능을 사람이 알아보기 쉽게 적는다.
예:
| 저장소명 | 설명 |
| -------------------------------------------- | ------------------------------- |
| hmc-ulsan-assembly2-bolt-inspection | 현대자동차 울산 의장2공장 볼트 검사 프로그램 |
| hmc-jeonju-body1-underbody-inspection | 현대자동차 전주 차체1공장 하부 검사 프로그램 |
| kmc-gwangju-assembly1-misassembly-inspection | 기아자동차 광주 의장1공장 오장착 검사 프로그램 |
| etc-mobis-anyang-assembly1-vision-inspection | 현대모비스 안양 의장1공장 비전 검사 프로그램 |
| hansero-hai-studio | 한세로 AI 트레이너 / VisionCore Studio |
| hansero-groupware | 한세로 그룹웨어 |
---
## 9. 검색 기준
Gitea에서 저장소를 찾을 때는 저장소 이름을 우선 기준으로 검색한다.
따라서 저장소 이름에는 검색에 필요한 핵심 키워드를 포함한다.
검색 가능한 키워드 예:
```text
hmc
kmc
hansero
etc
ulsan
jeonju
gwangju
assembly2
body1
bolt
pin
inspection
groupware
hai-studio
```
한글 검색을 위해 저장소 설명에도 고객사, 지역, 공장, 프로그램명을 한글로 작성한다.
예:
```text
저장소명: hmc-ulsan-assembly2-bolt-inspection
설명: 현대자동차 울산 의장2공장 볼트 검사 프로그램
```
---
## 10. Git에 올릴 것
아래 항목은 Git에 올린다. 아래 항목은 Git에 올린다.
@@ -138,7 +279,7 @@ DB 스크립트
--- ---
## 9. Git에 올리지 않을 것 ## 11. Git에 올리지 않을 것
아래 항목은 Git에 올리지 않는다. 아래 항목은 Git에 올리지 않는다.
@@ -149,6 +290,7 @@ obj
exe exe
dll dll
zip zip
msi
설치파일 설치파일
빌드 결과물 빌드 결과물
런타임 폴더 런타임 폴더
@@ -157,17 +299,17 @@ zip
대량 이미지 대량 이미지
로그 파일 로그 파일
현장 백업 파일 현장 백업 파일
비밀번호 / API Key / 인증서 비밀번호
API Key
인증서
``` ```
--- ---
## 10. .gitignore 기본 규칙 ## 12. .gitignore 기본 예시
각 저장소에는 반드시 `.gitignore`를 만든다. 각 저장소에는 반드시 `.gitignore`를 만든다.
기본 예시:
```gitignore ```gitignore
.vs/ .vs/
bin/ bin/
@@ -197,9 +339,11 @@ config.local.json
--- ---
## 11. 기존 NAS 폴더와 Git 역할 ## 13. 기존 NAS 폴더와 Git 역할
기존 NAS 폴더는 그대로 유지한다. 기존 NAS 폴더는 고객사, 공장, 납품본, 설치파일, 백업 자료를 보관하는 용도로 유지한다.
Git 저장소는 소스 코드와 수정 이력을 관리하는 용도로 사용한다.
```text ```text
NAS 폴더 NAS 폴더
@@ -211,66 +355,21 @@ Git 저장소
--- ---
## 12. 저장소 생성 예시 ## 14. 권한 관리
### 사내 프로그램 | 권한 | 용도 |
| ----- | ------------------- |
```text | Read | 조회, clone, pull |
98-internal-hai-studio | Write | 소스 수정, commit, push |
98-internal-groupware | Admin | 저장소 설정 변경 |
98-internal-hansero-chat
```
### 현대자동차 울산공장
```text
01-hmc-ulsan-bolt-inspection
01-hmc-ulsan-pin-inspection
01-hmc-ulsan-underbody-inspection
```
### 기아자동차 광주공장
```text
02-kia-gwangju-misassembly-inspection
02-kia-gwangju-vision-system
```
### 통합 / 공통
```text
97-common-vision-library
97-common-mes-interface
97-common-inspection-runtime
```
---
## 13. 권한 관리
* 조회만 필요한 사용자는 Read 권한
* 소스 수정 및 Push가 필요한 사용자는 Write 권한
* 저장소 설정 변경이 필요한 관리자는 Admin 권한
일반 개발자는 기본적으로 Write 권한을 사용한다. 일반 개발자는 기본적으로 Write 권한을 사용한다.
--- ---
## 14. 기본 작업 순서
```text
1. 저장소 생성
2. README.md 작성
3. .gitignore 작성
4. 소스 코드 추가
5. commit
6. push
```
---
## 15. 주의사항 ## 15. 주의사항
저장소 이름은 한 번 정하면 계속 사용하므로 신중하게 정한다. 저장소 이름은 한 번 정하면 계속 사용하므로 신중하게 정한다.
한글 설명은 자유롭게 사용하되, 저장소 이름은 영어/숫자/하이픈으로 통일한다. 한글은 저장소 설명, README, Wiki, Issue에서 사용한다.
대용량 파일은 Git에 올리지 않고 NAS 공유 폴더 또는 Gitea Release로 별도 관리한다. 저장소 이름에는 영어 소문자, 숫자, 하이픈만 사용한다.
대용량 파일은 Git에 올리지 않고 NAS 공유 폴더 또는 Gitea Release에 별도 보관한다.