๐Ÿ”€ Git

๐Ÿ”— GitHub์— ๋‚ด ํ”„๋กœ์ ํŠธ ๊ณต์œ ํ•˜๋Š” ๋ฒ• (์ฒ˜์Œ๋ถ€ํ„ฐ ๋ฐฐํฌ๊นŒ์ง€ ์ •๋ฆฌ)

CodeLoge 2025. 5. 12. 19:01

โœ… 1. GitHub ํ”„๋กœ์ ํŠธ ๊ณต๊ฐœ ์ „ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

• ๋ฏผ๊ฐํ•œ ์ •๋ณด (application.properties, .env)๋Š” .gitignore๋กœ ์ œ์™ธํ–ˆ๋Š”๊ฐ€?

• README.md๊ฐ€ ์ž‘์„ฑ๋˜์–ด ์žˆ๋Š”๊ฐ€?

๋ถˆํ•„์š”ํ•œ ํŒŒ์ผ (๋กœ๊ทธ, ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ ๋“ฑ)์ด ์ œ๊ฑฐ๋˜์—ˆ๋Š”๊ฐ€?

ํ”„๋กœ์ ํŠธ๊ฐ€ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ์ธ๊ฐ€?

# ์˜ˆ์‹œ: Git์— ์˜ฌ๋ฆฌ๊ธฐ ์ „ .gitignore ์„ค์ •
echo "/target" >> .gitignore
echo "*.log" >> .gitignore
echo ".env" >> .gitignore

๐Ÿ›  2. GitHub์— ํ”„๋กœ์ ํŠธ ์˜ฌ๋ฆฌ๋Š” ์ „์ฒด ๊ณผ์ •

# 1. ๋กœ์ปฌ Git ์ดˆ๊ธฐํ™”
git init

# 2. ์›๊ฒฉ ์ €์žฅ์†Œ ์—ฐ๊ฒฐ
git remote add origin https://github.com/your-id/your-repo.git

# 3. ํŒŒ์ผ ์ถ”๊ฐ€ ๋ฐ ์ปค๋ฐ‹
git add .
git commit -m "Initial commit"

# 4. GitHub๋กœ ํ‘ธ์‹œ
git push -u origin main

 

โ— GitHub ์ €์žฅ์†Œ ์ƒ์„ฑ ์‹œ README.gitignore๋ฅผ ์ž๋™ ์ƒ์„ฑํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๊น”๋”ํ•จ (๋กœ์ปฌ๊ณผ ์ถฉ๋Œ ์œ„ํ—˜)


๐Ÿ” 2-1. GitHub ํ† ํฐ(PAT)์œผ๋กœ ํ‘ธ์‹œํ•  ๋•Œ ์ธ์ฆํ•˜๋Š” ๋ฒ•

2021๋…„๋ถ€ํ„ฐ GitHub๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ ์ธ์ฆ์„ ์™„์ „ํžˆ ํ์ง€, ํ† ํฐ(Personal Access Token, PAT) ์ธ์ฆ๋งŒ ์ง€์›

 

โž• ํ† ํฐ ์ƒ์„ฑ ๋ฐฉ๋ฒ•

1. GitHub ์ ‘์† → ์šฐ์ธก ์ƒ๋‹จ ํ”„๋กœํ•„ → Settings

2. ์™ผ์ชฝ์—์„œ Developer Settings → Personal Access Tokens → Tokens (classic) ํด๋ฆญ

3. [Generate new token] ํด๋ฆญ

• ๊ถŒํ•œ์€ ์ตœ์†Œ repo ์ฒดํฌ

• Expiration์€ 90์ผ, no expiration ์ค‘ ์„ ํƒ

4. ์ƒ์„ฑ๋œ ํ† ํฐ ๋ฌธ์ž์—ด์€ ํ•œ ๋ฒˆ๋งŒ ํ‘œ์‹œ๋˜๋ฏ€๋กœ ๋ฐ˜๋“œ์‹œ ๋ณต์‚ฌํ•ด์„œ ๋ณด๊ด€

 

โž• ํ‘ธ์‹œ ์‹œ ์ธ์ฆ ์ž…๋ ฅ

git push -u origin main

 

 Username: GitHub ID ๊ทธ๋Œ€๋กœ ์ž…๋ ฅ

 Password: GitHub ๋น„๋ฐ€๋ฒˆํ˜ธ โŒ → ์ƒ์„ฑํ•œ ํ† ํฐ ๋ฌธ์ž์—ด ๋ถ™์—ฌ๋„ฃ๊ธฐ


๐Ÿ”„ ๊ธฐ์กด ์ธ์ฆ ์ •๋ณด ์ดˆ๊ธฐํ™” (์›ํ•˜๋Š” ๊ฒฝ์šฐ)

 macOS: Keychain Access์—์„œ github.com ๊ฒ€์ƒ‰ ํ›„ ์‚ญ์ œ

 Windows: ์ž๊ฒฉ ์ฆ๋ช… ๊ด€๋ฆฌ์ž์—์„œ git:https://github.com ํ•ญ๋ชฉ ์‚ญ์ œ

๐Ÿ”‘ ํ•œ ๋ฒˆ ๋กœ๊ทธ์ธํ•˜๋ฉด Git์ด ์บ์‹œ์— ํ† ํฐ ์ €์žฅ, ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅ


๐Ÿ“ 3. README.md ์ž‘์„ฑ ํŒ

# ๐Ÿฏ HoneyComboFactory

GS25, CU ํŽธ์˜์  ์ƒํ’ˆ์„ ์กฐํ•ฉํ•˜์—ฌ ์ตœ๊ณ ์˜ ์กฐํ•ฉ์„ ์ฐพ๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

## ๐Ÿ“ฆ ๊ธฐ๋Šฅ
- ์กฐํ•ฉ์ƒํ’ˆ ์ถ”์ฒœ
- ๊ฒŒ์‹œํŒ (์ž‘์„ฑ, ์ˆ˜์ •, ์‚ญ์ œ)
- ๋กœ๊ทธ์ธ/ํšŒ์›๊ฐ€์ž…
- ๋ฆฌ๋ทฐ ๊ธฐ๋Šฅ

## โš™ ๊ธฐ์ˆ  ์Šคํƒ
- Java 11 / Spring MVC / Oracle
- JSTL / JSP / JDBC Template
- MyBatis (์ง„ํ–‰ ์ค‘)

## ๐Ÿš€ ์‹คํ–‰ ๋ฐฉ๋ฒ•
1. Oracle DB ์ƒ์„ฑ ๋ฐ ํ…Œ์ด๋ธ” ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰
2. `src/main/resources` ๋‚ด DB ์„ค์ • ์ถ”๊ฐ€
3. Eclipse ๋˜๋Š” IntelliJ์—์„œ ์‹คํ–‰

 

๐Ÿ“Œ GitHub์— ์˜ฌ๋ฆฌ๋Š” ๋ชฉ์  = ํ”„๋กœ์ ํŠธ๋ฅผ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ์ด ์ดํ•ดํ•˜๊ณ  ์‹คํ–‰ ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ


๐ŸŒ 4. ํ”„๋กœ์ ํŠธ ๊ณต๊ฐœ ํ›„ ๋ฐฐํฌ ๋ฐ ์•Œ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•

• GitHub Repository์— Topics ์ถ”๊ฐ€ (spring, oracle, personal-project)

• velog, Notion, LinkedIn, ๋ธ”๋กœ๊ทธ์— ์†Œ๊ฐœ ํฌ์ŠคํŒ… ์ž‘์„ฑ

• ํ”„๋กœ์ ํŠธ ์š”์•ฝ ์˜์ƒ(GIF๋‚˜ Loom ๋“ฑ)๋„ ํšจ๊ณผ์ 

 

โš ๏ธ 5. ์ž์ฃผ ํ•˜๋Š” ์‹ค์ˆ˜์™€ ์‹ค์ „ ํŒ

์‹ค์ˆ˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•
.gitignore ์„ค์ • ์•ˆ ํ•ด์„œ target/, .class ๋‹ค ์˜ฌ๋ผ๊ฐ ๊ผญ ์ปค๋ฐ‹ ์ „์— ํ™•์ธ
DB ๊ณ„์ • ์ •๋ณด ๊นƒํ—™์— ์—…๋กœ๋“œ .gitignore + config ํŒŒ์ผ ๋ถ„๋ฆฌ ํ•„์ˆ˜
README ์—†๋Š” ์ฑ„๋กœ ๊ณต๊ฐœ ์ตœ์†Œํ•œ์˜ ์„ค๋ช…์€ ํ•„์ˆ˜
๊นƒํ—™์—๋งŒ ์˜ฌ๋ฆฌ๊ณ  ์•„๋ฌด ๋ฐ๋„ ๊ณต์œ  ์•ˆ ํ•จ ์ปค๋ฎค๋‹ˆํ‹ฐ ํ™œ์šฉํ•ด์•ผ ํ”ผ๋“œ๋ฐฑ ๋ฐ›์Œ

 

โœ๏ธ ๋งˆ๋ฌด๋ฆฌ

GitHub๋Š” ๋‹จ์ˆœ ๋ฐฑ์—…์šฉ์ด ์•„๋‹ˆ๋ผ, ๋‚˜์˜ ๊ธฐ์ˆ  ํฌํŠธํด๋ฆฌ์˜ค
๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌํ•ด์„œ ์˜ฌ๋ ค๋‘๋ฉด ๋‚˜์ค‘์— ๋‚ด ์‹ค๋ ฅ ์ฆ๋ช…์ž๋ฃŒ๋กœ๋„ ์ถฉ๋ถ„ํžˆ ํ™œ์šฉ ๊ฐ€๋Šฅ