ยซ   2025/02   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Recent Posts
02-02 00:31

Today
Total

Recent Comments
๊ด€๋ฆฌ ๋ฉ”๋‰ด

์—ฐ์˜ ๊ธฐ๋ก ๐Ÿช

์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ : 1. ์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ์ž…๋ฌธ ๋ณธ๋ฌธ

WEB/Server

์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ : 1. ์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ์ž…๋ฌธ

kite707 2022. 1. 13. 23:27

 

์ œ๊ณต๋ฐ›์€ ๊ฐ•์˜๋ฅผ ๋ชจ๋‘ ์ˆ˜๊ฐ•ํ•ด์„œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.

 

์šฐ์„  Git bashํ”„๋กœ๊ทธ๋žจ์„ ๊น”๊ณ , github์— ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š”๋ฐ ์ด๋Š” ๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ƒ๋žตํ•˜๊ฒ ๋‹ค.(๊ฐ•์˜์—์„œ๋Š” ์•Œ๋ ค์ค€๋‹ค.)

 

Git ๊ธฐ๋ณธ ํ”Œ๋กœ์šฐ

์šฐ๋ฆฌ๊ฐ€ ํ•  ์ž‘์—…๋“ค์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

1. ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์†Œ์Šค์ฝ”๋“œ ๋‹ค์šด๋กœ๋“œ(clone)
2. ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์ž‘์—…ํ•œ ๋‚ด์šฉ ์Šคํ…Œ์ด์ง€ ์˜์—ญ์— ์ถ”๊ฐ€(add)
3. ์˜๋ฏธ์žˆ๋Š” ๋ณ€๊ฒฝ์ ์ด ์Œ“์ด๋ฉด ์ปค๋ฐ‹์„ ๋งŒ๋“ค์–ด(commit)
4. ๋กœ์ปฌ ์ €์žฅ์†Œ์— ์˜๊ตฌ์ ์œผ๋กœ ์ €์žฅ
5. ์›๊ฒฉ ์ €์žฅ์†Œ์— ์ €์žฅ (push)
6. ์›๊ฒฉ ์ €์žฅ์†Œ์—์„œ ๋ณ€๊ฒฝ์‚ฌํ•ญ ๊ฐ€์ ธ์˜ด(pull)

Git ๊ธฐ๋ณธ ํ”Œ๋กœ์šฐ ์ดํ•ด๋ฅผ ์œ„ํ•œ ์‹ค์Šต

1. ์ €์žฅ์†Œ ์ƒ์„ฑ

์ €์žฅ์†Œ ์ƒ์„ฑ ๋ฐฉ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

1 . cloneํ•˜๊ธฐ
2 . ๋กœ์ปฌ ์ €์žฅ์†Œ ์ƒ์„ฑ -> ์ดˆ๊ธฐํ™” (git init) -> ์›๊ฒฉ ์ €์žฅ์†Œ ์—ฐ๊ฒฐ(git remote add)

//gittest๋ผ๋Š” ์ด๋ฆ„์˜ ํด๋” ์ƒ์„ฑ
mkdir gittest

//gittestํด๋”๋กœ ์ด๋™
cd gittest

//์›๊ฒฉ์ €์žฅ์†Œ์™€ ์—ฐ๊ฒฐ
git init
git remote add [๋ณ„์นญ] [์ €์žฅ์†Œ์ฃผ์†Œ]

2 . ํŒŒ์ผ ์ƒ์„ฑ ๋ฐ ์ปค๋ฐ‹

์ด์ œ vi ์—๋””ํ„ฐ๋กœ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ , ์ปค๋ฐ‹์„ ํ•ด๋ณผ ๊ฒƒ์ด๋‹ค.

vi์—๋””ํ„ฐ๋กœ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

1. vi [ํŒŒ์ผ์ด๋ฆ„] ์ž…๋ ฅ
2. i์ž…๋ ฅํ•˜๋ฉด ์ž…๋ ฅ๋ชจ๋“œ๋กœ ์ „ํ™˜๋จ
3. ์›ํ•˜๋Š” ๋‚ด์šฉ ์ž‘์„ฑ
4. esc๋ฅผ ๋ˆ„๋ฅด๊ณ  :wq+enterํ‚ค๋ฅผ ๋ˆ„๋ฅด๋ฉด ์ €์žฅํ•˜๊ณ  ์—๋””ํ„ฐ ์ข…๋ฃŒ

์‚ฌ์ง„์„ ๋ณด๋ฉด test1.java๊ฐ€ Untracked file์ด๋ผ๊ณ  ๋˜์–ด์žˆ๋‹ค.

Untracked Tracked
๋ณ€๊ฒฝ์ ์€ ๋ฐœ์ƒํ–ˆ์œผ๋‚˜, Git์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜์ง€ ์•Š์€ ํŒŒ์ผ. Git์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ํŒŒ์ผ
๋‹จ ํ•œ ๋ฒˆ๋„ Staging Area์— ํฌํ•จ๋˜์ง€ ์•Š์€ ํŒŒ์ผ Staging Area์— ํ•œ ๋ฒˆ ์ด์ƒ ํฌํ•จ๋œ ํŒŒ์ผ

์ด์ œ ๋งŒ๋“  test1.javaํŒŒ์ผ์„ Staging Area์— ์˜ฌ๋ฆฌ๊ณ , ์ปค๋ฐ‹์„ ํ•  ๊ฒƒ์ด๋‹ค. ๋ช…๋ น์–ด๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

//Staging Area์— ํŒŒ์ผ ์ถ”๊ฐ€
git add [ํŒŒ์ผ๋ช…]
=> git add test1.java

//Staging Area์— ์žˆ๋Š” ๋ณ€๊ฒฝ์ ๋“ค ์ปค๋ฐ‹
git commit 
//์œ„ ๋ช…๋ น์–ด ์‹คํ–‰์‹œ ์—๋””ํ„ฐ๊ฐ€ ์—ด๋ฆฌ๋Š”๋ฐ ์‚ฌ์šฉ๋ฒ•์€ vi์—๋””ํ„ฐ์™€ ๊ฐ™๋‹ค.
//1. i๋ˆŒ๋Ÿฌ INSERT ๋ชจ๋“œ๋กœ ์ง„์ž….
//2. ์›ํ•˜๋Š”๋Œ€๋กœ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ์ž‘์„ฑ
//3. esc๋ˆ„๋ฅด๊ณ  :wq+enter๋กœ ์ €์žฅ

//์—๋””ํ„ฐ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ์ธ๋ผ์ธ์œผ๋กœ ์ปค๋ฐ‹
git commit -m "์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€"

//์ปค๋ฐ‹์˜ ํžˆ์Šคํ† ๋ฆฌ ํ™•์ธ
git log

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๊ฐ€ ์ž˜ ๋“ค์–ด๊ฐ”๋‹ค.

 

์ปค๋ฐ‹ ๋˜๋Œ๋ฆฌ๊ธฐ (amend, revert)

์ปค๋ฐ‹์„ ๋˜๋Œ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์€ amend์™€ revert๊ฐ€ ์žˆ๋‹ค.

amend๋Š” ๋งˆ์ง€๋ง‰์— ๋ฐ˜์˜ํ•œ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์œผ๋‚˜ ๋˜๋Œ๋ฆฐ ๊ฒƒ์€ ๋ณต๊ตฌํ•  ์ˆ˜ ์—†๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•ด ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์„ ๋งŒ๋“ค์–ด ๋ฎ์–ด์“ฐ๊ธฐ๋ฅผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

 

revert๋Š” ์ปค๋ฐ‹์˜ ํžˆ์Šคํ† ๋ฆฌ ๋‚ด์šฉ์„ ์œ ์ง€ํ•˜๋ฉฐ ๋‚ด์šฉ๋งŒ rollbackํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

 

๋‘ ๋ช…๋ น์–ด์˜ ์‚ฌ์šฉ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

//์ปค๋ฐ‹ ๋˜๋Œ๋ฆฌ๊ธฐ(์ปค๋ฐ‹์˜ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•  ๋ณ€๊ฒฝ์ ์ด ์žˆ์„ ๋•Œ)
git commit --amend  //๋งˆ์ง€๋ง‰์— ๋ฐ˜์˜ํ•œ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ๋ณ€๊ฒฝ๊ฐ€๋Šฅ, ๋˜๋Œ๋ฆฐ ๊ฒƒ์€ ๋ณต๊ตฌ ๋ถˆ๊ฐ€
//์ฆ‰ ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹์„ ์ƒˆ๋กœ์šด ๊ฒƒ์œผ๋กœ ๋ฎ์–ด์“ฐ๊ธฐ ํ•˜๋Š” ๊ฒƒ

//์ปค๋ฐ‹์˜ ํžˆ์Šคํ† ๋ฆฌ ์œ ์ง€ํ•˜๋ฉฐ ๋‚ด์šฉ๋งŒ rollbackํ•˜๋Š” ๋ฐฉ๋ฒ•
git revert '๋งˆ์ง€๋ง‰์— ๋ฐ˜์˜ํ•œ commit ID'

amend ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒฐ๊ณผ ์ปค๋ฐ‹์˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ๋‹ค.
git revert๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒฐ๊ณผ test1.javaํŒŒ์ผ์ด ์‚ฌ๋ผ์ง„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋‹ค์Œ๊ธ€ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ

https://sectumsempra.tistory.com/112

 

์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ 3 : ์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ํ™œ์šฉํ•œ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ

https://sectumsempra.tistory.com/109 ์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ : 1. ์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ์ž…๋ฌธ ์ œ๊ณต๋ฐ›์€ ๊ฐ•์˜๋ฅผ ๋ชจ๋‘ ์ˆ˜๊ฐ•ํ•ด์„œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค. ์šฐ์„  Git bashํ”„๋กœ๊ทธ๋žจ์„ ๊น”๊ณ , github์— ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์–ด

sectumsempra.tistory.com

 

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ Java ์›น ๊ฐœ๋ฐœ ์ฒดํ—˜๋‹จ ํ™œ๋™์œผ๋กœ ์ œ๊ณต๋ฐ›์€ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ์—์„œ "์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ์ž…๋ฌธ" ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๋งํฌ : https://www.codepresso.kr/