# 한세로 Git 저장소 관리 규칙

한세로 Git은 프로그램 소스 코드와 수정 이력을 관리하기 위한 저장소입니다.
기존 NAS 폴더는 납품본, 설치파일, 이미지, 백업 보관용으로 유지하고, Git에는 소스 코드만 관리합니다.

---

## 1. 저장소 이름 규칙

저장소 이름은 영어 소문자, 숫자, 하이픈만 사용합니다.

### 현대자동차

```text
hmc-지역-공장구분-프로그램명
```

예:

```text
hmc-ulsan-assembly1-bolt-inspection
hmc-jeonju-body1-underbody-inspection
```

### 기아자동차

```text
kmc-지역-공장구분-프로그램명
```

예:

```text
kmc-gwangju-assembly1-misassembly-inspection
```

### 한세로

```text
hansero-프로그램명
```

예:

```text
hansero-hai-studio
hansero-groupware
hansero-chat
```

### 기타 고객사

```text
etc-고객사-프로그램명
```

예:

```text
etc-mobis-vision-inspection
etc-sampyo-silo-level-inspection
```

---

## 2. 코드 기준

### 대분류

| 코드      | 의미        |
| ------- | --------- |
| hmc     | 현대자동차     |
| kmc     | 기아자동차     |
| hansero | 한세로 사내/공통 |
| etc     | 기타 고객사    |

### 지역

| 코드              | 의미     |
| --------------- | ------ |
| ulsan           | 울산     |
| jeonju          | 전주     |
| gwangju         | 광주     |
| namyang         | 남양     |
| uiwang          | 의왕     |
| anyang          | 안양     |
| cheongju        | 청주     |
| china-guangzhou | 중국 광저우 |
| georgia         | 미국 조지아 |

### 공장구분

| 코드           | 의미    |
| ------------ | ----- |
| assembly     | 의장    |
| body         | 차체    |
| paint        | 도장    |
| press        | 프레스   |
| engine       | 엔진    |
| transmission | 변속기   |
| battery      | 배터리   |
| quality      | 품질    |
| research     | 연구소   |
| office       | 사무/관리 |

공장 번호가 있으면 뒤에 숫자를 붙입니다.

```text
assembly1
assembly2
body1
body2
```

---

## 3. 저장소 설명

저장소 설명은 한글로 작성합니다.

예:

| 저장소명                                         | 설명                         |
| -------------------------------------------- | -------------------------- |
| hmc-ulsan-assembly1-bolt-inspection          | 현대자동차 울산 의장1공장 볼트 검사 프로그램  |
| kmc-gwangju-assembly1-misassembly-inspection | 기아자동차 광주 의장1공장 오장착 검사 프로그램 |
| hansero-groupware                            | 한세로 그룹웨어                   |
| etc-mobis-vision-inspection                  | 현대모비스 비전 검사 프로그램           |

---

## 4. Git에 올릴 것

```text
소스 코드
프로젝트 파일
솔루션 파일
README.md
설정 샘플
DB 스크립트
간단한 문서
```

---

## 5. Git에 올리지 않을 것

```text
bin
obj
.vs
exe
dll
zip
msi
설치파일
빌드 결과물
런타임 폴더
학습 데이터
학습 모델
대량 이미지
로그 파일
백업 파일
비밀번호
API Key
인증서
토큰
```

---

## 6. 직원 토큰 생성 방법

저장소 생성 도구를 사용하려면 직원별 Gitea 토큰이 필요합니다.

1. `https://git.hansero.co.kr` 접속
2. 본인 계정으로 로그인
3. 우측 상단 프로필 클릭
4. `설정` → `애플리케이션`
5. `액세스 토큰 생성`
6. 토큰 이름 입력

```text
Hansero Git Repo Creator
```

7. 권한 선택 화면이 있으면 아래 권한 부여

```text
repository: read / write
organization: read / write
user: read
```

8. 생성된 토큰을 복사하여 저장소 생성 도구에 입력

토큰은 생성 직후 한 번만 표시됩니다.
토큰은 비밀번호와 같으므로 다른 사람과 공유하지 않습니다.

---

## 7. 저장소 생성 도구 사용법

최신 실행 파일은 이 저장소의 `릴리즈`에서 다운로드합니다.

실행 파일:

```text
HanseroGitRepoCreator.exe
```

사용 순서:

1. 실행 파일 실행
2. `토큰 설정`에서 본인 토큰 저장
3. 대분류 선택
4. 지역, 공장구분, 공장번호 입력
5. 프로그램명 입력
6. 로컬 소스 폴더 선택
7. `저장소 생성 및 업로드` 클릭

---

## 8. 권한 기준

직원은 본인 토큰으로 저장소를 생성합니다.

기본 권한 원칙:

```text
본인이 생성한 저장소만 접근 가능
다른 직원이 생성한 저장소는 접근 불가
```

관리자가 필요한 경우 특정 저장소에 별도 권한을 부여합니다.
