๐Ÿ ๊ธฐํƒ€/์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ_BE

[Git] Git๋ช…๋ น์–ด | ์‹ค์Šต | ํ˜•์ƒ๊ด€๋ฆฌ 2

Dhey 2022. 1. 8. 19:23
๋ฐ˜์‘ํ˜•
์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์˜ ํŒŒ์ผ ์ƒํƒœ

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

add๋ฅผ ํ•œ๋ฒˆ๋„ ํ•˜์ง€ ์•Š์€ ์ƒํƒœ / Untracked

โ‰ซ Tracked
: Git์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ํŒŒ์ผ
Staging Area์— ํ•œ ๋ฒˆ ์ด์ƒ ํฌํ•จ๋œ ํŒŒ์ผ

add๋ช…๋ น์–ด ํ›„์˜ ํŒŒ์ผ ์ƒํƒœ / new file

 

commit ํ•˜๋Š” ๋ฒ•

1. git commit ๋ช…๋ น์–ด ์ž…๋ ฅ ํ›„

Commit 1 for TestService ๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์˜ฌ๋ฆฌ๊ฒ ๋‹ค

 

2. :wq๋กœ ์ €์žฅํ•˜๊ณ  ์ข…๋ฃŒํ•˜๋ฉด, Commit ์™„๋ฃŒ

master Branch์— Commit 1 fro TestService๋ผ๋Š” ์ปค๋ฐ‹์ด ์ƒ์„ฑ๋˜์—ˆ๋‹ค

โ€ป ์—๋””ํ„ฐ ์‹คํ–‰ ์—†์ด ์ปค๋ฐ‹์„ ์ƒ์„ฑํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, git commit -m "์ปค๋ฐ‹๋ฉ”์„ธ์ง€" ๋กœ ์ปค๋ฐ‹ ์ƒ์„ฑ!



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

โ‰ซ git log

- commit: ์ปค๋ฐ‹์˜ ID
- Author: ์ปค๋ฐ‹์„ ๋ฐ˜์˜ํ•œ ๋‹ด๋‹น์ž ์ •๋ณด
- Date: ์ปค๋ฐ‹ ๋ฐ˜์˜ ๋‚ ์งœ์™€ ์‹œ๊ฐ„

์ปค๋ฐ‹ ๋˜๋Œ๋ฆฌ๊ธฐ

์ด๋ฏธ ์ปค๋ฐ‹์„ ๋งŒ๋“ค์—ˆ๋Š”๋ฐ,
1) ์ปค๋ฐ‹์˜ ๋ฉ”์„ธ์ง€๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์„ ๋•Œ
โ‰ซ git commit --amend

(๋งˆ์ง€๋ง‰ ๋ฐ˜์˜ํ•œ ์ตœ์‹  ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€๋ฅผ ์ˆ˜์ •ํ•˜๊ฒŒ ๋จ, ๋˜๋Œ๋ฆฐ ๊ฒƒ์€ ๋ณต๊ตฌํ•  ์ˆ˜ ์—†์Œ)

2) ์ปค๋ฐ‹์— ์ถ”๊ฐ€ํ•  ๋ณ€๊ฒฝ์ ์ด ์žˆ์„ ๋•Œ
โ‰ซ vi ํŒŒ์ผ์ด๋ฆ„ ์œผ๋กœ ํŒŒ์ผ ์ˆ˜์ • ํ›„
โ‰ซ git add ํŒŒ์ผ์ด๋ฆ„ ์œผ๋กœ ์Šคํ…Œ์ด์ง• ์˜์—ญ์— ์ถ”๊ฐ€
โ‰ซ git commit --amend ๋กœ ์ปค๋ฐ‹ ์ƒ์„ฑ

3) ํžˆ์Šคํ† ๋ฆฌ๋Š” ์œ ์ง€ํ•œ ์ƒํƒœ๋กœ ์ปค๋ฐ‹์„ ๋˜๋Œ๋ฆฌ๊ณ  ์‹ถ์„ ๋•Œ
โ‰ซ git revert commit ID ๋กœ ์ฝ”๋“œ๋ฅผ ์›๋ณตํ•จ

push์™€ pull


์—ฌ๋Ÿฌ ์ž‘์—… ํ›„ git push๋ฅผ ํ–ˆ๋Š”๋ฐ ์•„๋ž˜์™€ ๊ฐ™์ด reject๋  ๋•Œ๊ฐ€ ์žˆ๋‹ค.

git push ์ž‘์—…์ด fail ๋จ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์ด๋Š” ์›๊ฒฉ ์ €์žฅ์†Œ์— ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๊ฐ€ ์˜ฌ๋ฆฐ ์ปค๋ฐ‹์ด ์กด์žฌํ•˜๋Š”๋ฐ ๋‚ด ๋กœ์ปฌ ์ €์žฅ์†Œ์—๋Š” ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์˜ ์ปค๋ฐ‹์ด ์—†๋Š” ์ƒํƒœ์ธ ๊ฒƒ.

๋”ฐ๋ผ์„œ, git push ์ „ git pull๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์— ์žˆ๋Š” ์ปค๋ฐ‹์„ ๋‚˜์˜ ๋กœ์ปฌ์ €์žฅ์†Œ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…์„ ํ•ด์•ผํ•œ๋‹ค!

git pull๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์˜ ์ปค๋ฐ‹์„ ๊ฐ€์ ธ์˜ด

push ์ž‘์—…์ด ์„ฑ๊ณตํ•œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.


์ด์ฒ˜๋Ÿผ ํ•˜๋‚˜์˜ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋“ค๊ณผ ํ˜‘์—…ํ•˜์—ฌ ๋งŒ๋“ ๋‹ค๋ฉด, ์ˆ˜์‹œ๋กœ ์›๊ฒฉ์ €์žฅ์†Œ์˜ ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์„ pull์„ ํ†ตํ•ด ๋‚˜์˜ ๋กœ์ปฌ์ €์žฅ์†Œ๋กœ ๋ฐ›์•„์˜จ ํ›„ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.

-- Tip --

* ์•„๋ž˜ Warning ๋กœ๊ทธ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋ฉด?
 โ‰ซ git config --global core.safecrlf false ๋ช…๋ น์–ด๋กœ ๊ฒฝ๊ณ  ๋ฉ”์„ธ์ง€ ์„ค์ •์„ off ์‹œํ‚ค๊ณ  ์ž‘์—…ํ•˜๋ฉด ๋จ!


* Git ๋ช…๋ น์–ด์˜ ์˜ต์…˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๊ณ ์‹ถ๋‹ค๋ฉด?
 โ‰ซ ๋ช…๋ น์–ด ๋’ค์— --help ์˜ต์…˜์„ ์ž…๋ ฅํ•˜๋ฉด ๋จ (ex. git log --help)


* git log -u ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํžˆ์Šคํ† ๋ฆฌ ํ™•์ธ ๋„์ค‘ command ์ž…๋ ฅ์ฐฝ์œผ๋กœ ๋น ์ ธ ๋‚˜์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด?
 โ‰ซ ์•ŒํŒŒ๋ฒณ q ๋ฅผ ๋ˆ„๋ฅธ ํ›„, Enter ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋จ



 

์ฝ”๋“œํ”„๋ ˆ์†Œ Java ์›น ๊ฐœ๋ฐœ ์ฒดํ—˜๋‹จ ํ™œ๋™ ์ค‘ '์‹ค๋ฌด์ž๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” Git ์ž…๋ฌธ' ์ด๋Ÿฌ๋‹ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :)

์ฝ”๋“œํ”„๋ ˆ์†Œ URL: https://www.codepresso.kr/

 

ํ”„๋ฆฌ๋ฏธ์—„ IT ๊ต์œก ์„œ๋น„์Šค - ์ฝ”๋“œํ”„๋ ˆ์†Œ

 

www.codepresso.kr

 


 

โ–ถ ๋” ์ž์„ธํ•œ Git ๋ช…๋ น์–ด๋ฅผ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜ ๊ธ€ ์ฐธ๊ณ ! โ—€

 

Git ๋ช…๋ น์–ด

∑ git init : ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— .git์ด๋ผ๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ ์ƒ์„ฑ,  ํŠน์ • ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ Git์œผ๋กœ ๋ฒ„์ „ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๋กœ ๋งŒ๋“ค์–ด ์คŒ ∑ git config user.name "์ด๋ฆ„" : ์‚ฌ์šฉ์ž ์ด๋ฆ„ ์„ค์ • ∑ git confi

dhdh-study.tistory.com

 

๋ฐ˜์‘ํ˜•