[git] ์์กด์ ์ํ git : Git๊ณผ ๊ด๋ จ๋ ํ์ ์ ๋ชจ๋ ๊ฒ
์ด์ ์ ๋ธ๋ก๊ทธ์ " ์์กด์ ์ํ Git" ์ด๋ผ๋ ์ฃผ์ ๋ก ๋ธ๋ก๊ทธ ๊ธ์ ๋ฐํํ ์ ์ด ์๋ค
์ด๋ฒ ๊ธ์ ์์๋ฅผ ํตํด ์ ํด๋น ๋ช ๋ น์ด๋ฅผ ์ฐ๋์ง ์๋ฟ๊ฒ ์์ฑํ๋ ค๊ณ ํ๋ค
Q. ์ด! ์๊ฒฉ ๋ธ๋์น(ํ์ธ๊ณผ ๊ณต์ ๋์ด ์์)์ ์ปค๋ฐ์ ์ทจ์ํด์ผ ํ ๊ฒ ๊ฐ์์
reset๊ณผ revert์ค์ ๋ฌด์์ ์ฌ์ฉํด์ผ ํ๋์?
๋ ๋ช ๋ น์ด์ ์ฐจ์ด์ ์ ์์๋ก ์์๋ณด์
๋ ๋ค ์ทจ์ํ๋ ๋ช ๋ น์ด์ง๋ง revert๋ ์ปค๋ฐ ์ทจ์๋ฅผ ๋ด์ญ์ผ๋ก ๋จ๊ธด๋ค

์ด๊ธฐ ์ํ์์ reset์ ์งํํด๋ณด์

์๋ชป๋ ์ปค๋ฐ์
์๋ฆฌ ์๋ฌธ ์์ด ์ฌ๋ผ์ง๊ณ
--soft HEAD~1 ์ต์
์ผ๋ก ์ธํด
staging ์์ญ์ ๋ณ๊ฒฝ ์ฌํญ์ด ์์์ ์ ์ ์๋ค

์ด๊ธฐ ์ํ์์ revert๋ฅผ ์งํํด๋ณด์

revert๋ฅผ ์งํํ๋
revert๊ฐ ์ผ์ด๋ฌ์์ ํ์ํ๋ ์ปค๋ฐ์
์ถ๊ฐํ๋ ์ฐฝ์ด ๋ด๋ค

๊ธฐ์กด ์๋ชป๋ ์ปค๋ฐ ํ์คํ ๋ฆฌ๋ ์ ์ง๋ ์ฑ
revert๊ฐ ์ผ์ด๋ฌ์์ ํ์ํ๋ ์ปค๋ฐ์ด ์ถ๊ฐ๋๊ณ
์๋ชป๋ ์ปค๋ฐ(1)์ด๋ผ๊ณ readme์ ์ ์ด๋๋ ๊ฒ๋ ์ฌ๋ผ์ก๋ค
ํ ๋ง๋๋ก
revert๋ ์๋ชป๋ ์ปค๋ฐ ์ด๋ ฅ์ ์ ์งํ ์ฑ ๋ณ๊ฒฝ ๋ด์ญ์ ๋๋๋ฆฌ๋ ์์ ์ ์งํํ๋ค
reset๋ ์ปค๋ฐ ์ด๋ ฅ์ด ๋ฌ๋ผ์ง๋ค(์๋ชป๋ ์ปค๋ฐ์ด ์ฌ๋ผ์ง)
๋ง์ฝ์ reset์ ๊ณต์ ํ๋ ๋ธ๋์น์ ์ฌ์ฉํ๋ค๋ฉด ์ปค๋ฐ ์ด๋ ฅ์ด ๋ฌ๋ผ์ง๊ณ
๋ ์ ํผ๊ฒ (?) ๋๋ค
์ฃผ์ํ์
Q. A๋ธ๋์น(์์ง ๊ณต์ x)์ A-1๋ธ๋์น์ ๋ณ๊ฒฝ ๋ด์ญ์ ๋ฐ์์ค๊ณ ์ถ์ด์
rebase vs merge ์ฐจ์ด

test/main-branch์์ ์ฒซ๋ฒ์งธ ์ปค๋ฐ ์์ฑ ํ
feature-branch๋ก checkoutํด์ ๋ก์ปฌ ๋ธ๋์น ์ต์ด ์ปค๋ฐ์ ์์ฑ
๋ค์ test/main-branch์์ ๋ฆฌ๋ชจํธ ๋ธ๋์น ๋๋ฒ์จฐ ์ปค๋ฐ ์์ฑ
(์ปค๋ฐ ๋ฉ์์ง๋ ์ ๊ฒฝ์ฐ์ง ๋ง๊ฒ)
merge๋ฅผ ์งํํด๋ณด๊ฒ ๋ค

merge ์ปค๋ฐ์ด feature-branch์ ์๊ฒผ๋ค
rebase๋ฅผ ์งํํด๋ณด๊ฒ ๋ค

feature-branch ๋ณด๋ฉด ๋ก์ปฌ ๋ธ๋์น ์ฒซ๋ฒ์งธ ์ปค๋ฐ ์๋ฃํ๋๋ฐ
test/main-branch์์ ๋ณ๊ฒฝ ์ปค๋ฐ์ด ์๊ธด ์ํฉ


main-branch์ ์ปค๋ฐ ๋ด์ฉ์ ์์ ๋ถ์ด๊ณ
์ดํ์ ๋ก์ปฌ ๋ธ๋์น์ ์ปค๋ฐ์ด ๋ถ๋๋ค
์ด๋ ๋ก์ปฌ ๋ธ๋์น์ ์ปค๋ฐ ํด์ ๊ฐ์ ๋ณ๊ฒฝ ๋๋ค
-> ์ ํ์ผ๋ก ์ปค๋ฐ ๋ก๊ทธ๋ฅผ ์ ์งํ ์ ์์ง๋ง
์ปค๋ฐ ๋ด์ญ์ ๋ณ๊ฒฝ์ด ์๊ธด๋ค
์ฆ, ๊ณต์ ํ๋ ๋ธ๋์น๋ก ์ด๋ฌ๋ฉด ์ผ์ด ๋ณต์กํด์ง ์ ์๋ค
๊ทธ์ธ์ ์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ์ฌํญ์ ๋ก์ปฌ์ ๋ฐ์ํ๋ ๋ค์ํ ๋ฐฉ๋ฒ
fetch : ์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ก์ปฌ๋ก ๊ฐ์ ธ์จ๋ค. ๋จ, ๋ก์ปฌ ๋ธ๋์น์๋ ์ํฅ์ ๋ฏธ์น์ง ์๋๋ค.
merge : ๋ค๋ฅธ ๋ธ๋์น์ ๋ณ๊ฒฝ ์ฌํญ์ ํ์ฌ ๋ธ๋์น์ ๋ณํฉํ๋ค.
pull (fetch + merge)
์ด๋ฒ ๋ฐฐํฌ์๋ ๊ฐ๋ฐ๋ A, B, C ๊ธฐ๋ฅ ์ค B ๊ธฐ๋ฅ๋ง ๋ค์ด๊ฐ๊ฑฐ์์
B๊ธฐ๋ฅ์ cherry-pick ํด๋ณด์

test/cherry-pick-main-branch์ B๊ธฐ๋ฅ์ cherry-pickํ์ฌ ์ ์ฉํ๋ ค ํ๋ค
test/cherry-pick-main-branch ๋ก ์ฎ๊ฒจ๊ฐ์

git cherry-pick b9277df
git cherry-pick --continue

test/cherry-pick-main-branch์ B ๊ธฐ๋ฅ๋ง์ด ๋ฐ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค
๋
https://github.com/Eundms/learn-git
GitHub - Eundms/learn-git: Git ์ง์ ํด๋ณด๊ธฐ
Git ์ง์ ํด๋ณด๊ธฐ . Contribute to Eundms/learn-git development by creating an account on GitHub.
github.com
[git] ์์กด์ ์ํ git : ํ์ผ์ ์ํ, ์ปค๋ฐ ํ์คํ ๋ฆฌ
[git] ์์กด์ ์ํ git : ํ์ผ์ ์ํ , ์ปค๋ฐ ํ์คํ ๋ฆฌ
Tracked (๊ด๋ฆฌ๋์) = Unmodified (์์ ํ์ง์์) + Modified (์์ ํจ) + Staged (์ปค๋ฐ์ผ๋ก ์ ์ฅ์์ ๊ธฐ๋กํ ์ํ) Untracked (๊ด๋ฆฌ๋์์ด ์๋) ์ฒ์ ์ ์ฅ์๋ฅผ Cloneํ๋ฉด ๋ชจ๋ ํ์ผ์ Tracked์ด๋ฉด์ Unmodfied ์ํ์ด
eundms.tistory.com
[git] ์์กด์ ์ํ Git : merge, rebase, cherry-pick, squash and merge
[git] ์์กด์ ์ํ Git : merge, rebase, cherry-pick, squash and merge
์ด๋ฐ ์ํฉ๊ณผ๊ฑฐ์ ๋ : (๋ฌด์ง์ฑ) commit, merge ํ์ฌ์ ๋ : (์! ์๊ฐ๋ณด๋ค ์ปค๋ฐ ๊ธฐ๋ก์ ํ์ธํ ์ผ์ด ์๋ค.. ์ปค๋ฐ ๋ฉ์์ง๋ ๊ธฐ๋ก์ ์ ๋จ๊ฒจ๋์ผ ํ๋ ๊ฒ์ ๊นจ๋ฌ์ ์ํ)๊ทธ๋์, merge, rebase, cherry-pick, squa
eundms.tistory.com
[git] ์์กด์ ์ํ Git : ๋๋๋ฆฌ๊ธฐ ์๋ฆฌ์ฆ --amend, reset, revert
[git] ์์กด์ ์ํ Git : ๋๋๋ฆฌ๊ธฐ ์๋ฆฌ์ฆ --amend, reset, revert
reset1. staging area์ ์ฌ๋ผ๊ฐ ํ์ผ์ unstaging ํ ๋ ์ด์ฉ (git add ์ทจ์)2. ๋ค๋ฅธ ์ฌ๋๊ฐ ์ฝ๋๊ฐ ๊ณต์ ๋์ง ์๋ ๊ฒฝ์ฐ (ex - ํผ์๋ง ์ฌ์ฉํ๋ ๋ธ๋์น) git reset [commit hash] : ํด๋น commit์ผ๋ก ๋ธ๋์น์ ์ฐธ์กฐ๋ฅผ
eundms.tistory.com
[git] git branch ์ ๋ต : develop, release, hotfix
[git] git branch ์ ๋ต : develop, release, hotfix
1. Main ๋ธ๋์น ์ถ์ ๊ฐ๋ฅํ ํ๋ก๋์ ์ฝ๋๋ฅผ ๋ชจ์๋๋ ๋ธ๋์น / ๋ฐฐํฌ๋ ๊ฐ ๋ฒ์ ์ Tag๋ฅผ ์ด์ฉํด ํ์ 2. Develop ๋ธ๋์น ๋ค์ ๋ฒ์ ๊ฐ๋ฐ์ ์ํ ์ฝ๋๋ฅผ ๋ชจ์๋๋ ๋ธ๋์น / ๊ฐ๋ฐ์ด ์๋ฃ๋๋ฉด, Main ๋ธ๋์น
eundms.tistory.com
| [Slack] Slack๊ณผ Github, Jira ์ฐ๋ (0) | 2025.01.09 |
|---|---|
| [Jira] Jira ์ Github ์ฐ๋ํ๊ธฐ (0) | 2025.01.07 |
| [ํ ์คํธ] nGrinder ํ์ฉํ ์ฑ๋ฅ ํ ์คํธํ๋ ๋ฐฉ๋ฒ (0) | 2024.12.22 |
| [ํ ์คํธ] ๋จ์ํ ์คํธ vs ํตํฉํ ์คํธ vs ์ธ์ํ ์คํธ (0) | 2024.12.11 |
| [git] git branch ์ ๋ต : develop, release, hotfix (0) | 2024.03.18 |