GIT ๊ณต๋ถ€

[GIT] git main branch ์•„๋‹Œ branch์— pushํ•˜๊ธฐ(by SSH)

๋ฐ์ฅฌ๋”” 2023. 9. 8. 15:34

๋จผ์ €,

git clone git@(~~SSH์— ์จ์ ธ์žˆ๋Š” ๋‚ด์šฉ~~)

 

๋‹จ๊ณ„

1. git branch

: ๋ณดํ†ต ์ž‘์—… ์‹œ์ž‘ํ•  ๋•Œ ํ•œ ๋ฒˆ์”ฉ ์ฒดํฌ ํ•ด์ฃผ๊ธฐ

ํ˜„์žฌ ๋‚ด๊ฐ€ ์–ด๋А ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—… ์ค‘์ธ์ง€ ์•Œ ์ˆ˜ ์žˆ์Œ

 

2. git remote -v

: ํ˜„์žฌ Git ์ €์žฅ์†Œ์— ๋“ฑ๋ก๋œ ์›๊ฒฉ ์ €์žฅ์†Œ(remote repository)์˜ URL์„ ๋ณด์—ฌ์คŒ

 

3. git checkout -b 

: Git์—์„œ ์ƒˆ๋กœ์šด ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ•ด๋‹น ๋ธŒ๋žœ์น˜๋กœ ์ „ํ™˜ํ•˜๋Š” ๋ช…๋ น์–ด

* ์‚ฌ์šฉ๋ฒ• - git checkout -b <branch-name>

 

4. git pull origin

: ์›๊ฒฉ ์ €์žฅ์†Œ(origin)์—์„œ ์ตœ์‹  ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๊ฐ€์ ธ์™€์„œ ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ ๋ธŒ๋žœ์น˜์— ๋ณ‘ํ•ฉ(merge)ํ•ด์คŒ

 

* ์‚ฌ์šฉ๋ฒ• - git pull origin <branch-name>

์œ„ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด origin ์›๊ฒฉ ์ €์žฅ์†Œ์—์„œ <branch-name>์— ์ง€์ •ํ•œ ๋ธŒ๋žœ์น˜์˜ ์ตœ์‹  ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๊ฐ€์ ธ์˜ด.

์ดํ›„, ๋กœ์ปฌ ๋ธŒ๋žœ์น˜์™€ ์›๊ฒฉ ๋ธŒ๋žœ์น˜๋ฅผ ์ž๋™์œผ๋กœ ๋ณ‘ํ•ฉ.

 

* + ์‚ฌ์šฉ๋ฒ• : git pull

: ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ ๋กœ์ปฌ ๋ธŒ๋žœ์น˜๊ฐ€ ์ด๋ฏธ ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ํŠน์ • ๋ธŒ๋žœ์น˜๋ฅผ ์ถ”์ ํ•˜๊ณ  ์žˆ๋‹ค๋ฉด(<branch-name> ์ƒ๋žต ๊ฐ€๋Šฅ), ์œ„์™€ ๊ฐ™์ด ๊ฐ„๋‹จํ•œ ๋ช…๋ น์–ด ์‚ฌ์šฉ 

-> ์ฃผ์˜ํ•  ์  :  git pull์„ ์‹คํ–‰ํ•˜๊ธฐ ์ „์— ํ˜„์žฌ ์ž‘์—… ์ค‘์ธ ํŒŒ์ผ๋“ค์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ปค๋ฐ‹ํ•˜๊ฑฐ๋‚˜ ์Šคํƒœ์‹œ(stash)ํ•˜์—ฌ ์ž„์‹œ๋กœ ๋ณด๊ด€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ. ์ด๋Š” ์ถฉ๋Œ(conflict) ๋“ฑ์˜ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•จ์ž„.