2021-07-13(Tue)
Facts (์ฌ์ค, ๊ฐ๊ด)
๊ฐ์ฌ์ผ๊ธฐ๋ฅผ 7์ผ์งธ ์ ๋ ๊ฒ์ ์ฑ๊ณตํ๋ค.
๋๋ฉ ๊ณผ์ ์ ํผ๋๋ฐฑ์ ๋ฐ์ํ์ฌ ์ฝ๋๋ฅผ ๊ฐ์ ํ๊ณ , ๋ค์ ํผ๋๋ฐฑ ์์ฒญํ๋ค.
์ํ์ฝ๋ฉ ์์คํธ๋ฆฌ ๊ฐ์๋ฅผ ์๊ฐํ๋ค.
Feelings (๋๋, ์ฃผ๊ด)
๊ทธ๊ฐ TIL์ ์ด๋์ ๋จ๊ธธ์ง ๋ฐฉํฉํ๊ณ ์์๋๋ฐ, ๋ ธ์ ์๋ค๊ฐ ๋จ๊ธฐ๋ค๊ฐ ๋ค์ gitbook์ผ๋ก ๋์์๋ค. gitbook์์ ๋ ธ์ ์ผ๋ก ๊ฐ์ํ ๊ฒ์ ํ๊ธ๋ก ๋ฌธ์ ์์ฑํ๋๊ฒ ๋ถํธํ ๊ฒ์ด ๊ฐ์ฅ ํฐ ์ด์ ์๋๋ฐ, ํด๋น ์ด์๊ฐ safari์์๋ ๋ฌธ์ ๊ฐ ์๊ธฐ์ง ์๋๋ค๋ ๊ฒ์ ์๊ท ํ์ฅ๋์ด ์๋ ค์ฃผ์ ์ ํด์ํ ์ ์์๋คใ ใ gitbook ํ์ ์ง์ ๋ฌธ์ํด์ ๋ต๋ณ ๋ฐ์ผ์ จ๋ค๋๋ฐ, ๋ฌธ์ ํด๊ฒฐ์ฌ์ ๋ฉด๋ชจ๋ฅผ ๋ณธ ๊ฒ ๊ฐ๋ค. ๋ณธ๋ฐ์์ผ์ง.
์ด์ ์ด์ ์งํ๋ ๋๋ฉ๊ณผ์ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ๊ณฑ์น์ผ๋ฉฐ ์ฝ๋๋ฅผ ๊ฐ์ ํด๋ณด์๋ค. ํจ์ฌ ์ฝ๋๊ฐ ๊น๋ํด์ง๊ณ ๋ณด์ด์ง ์๋๊ฒ ๋ณด์ด๋ ๊ฒ์ ๋ณด๋ฉฐ, ์ญ์ ํผ๋๋ฐฑ์ด ์ฑ์ฅ์ ํ์๋ผ๋ ์๊ฐ์ด ๋ค์๋ค. ํํธ ์์ง Rails์์ Cache๋ฅผ ์ ๋๋ก ์ฌ์ฉํด๋ณด์ง ์์ ๊ฒ์ด ๋ง์์ ๊ฑธ๋ฆฐ๋ค. ํ์ต ์ฐ์ ์์๋ฅผ ๋์ฌ์ผ๊ฒ ๋ค.
๊น์ GUI๋ก ๋ค๋ฃจ๋ ์์คํธ๋ฆฌ..! ํ์๋ค์ฒ๋ผ ์ ์ฐ๊ณ ์ถ๋ค. ๊ทธ๋ฐ๋ฐ ์์ง rebase -i ๊ฐ์๊ฑด ์ปค๋งจ๋๋ผ์ธ์ด ๋ ํธํ ๊ฒ ๊ฐ๋ค. cherry pick๋ ์์งํ ์์ง ๋ฑํ ์จ๋ณธ์ ์ด ์์ด์ ์ต์์น ์๋ค.. ์์์ ์ผ๋ก ํ์ตํด์ ์ฑ์๋ด์ผ๊ฒ ๋ค!
Findings (๋ฐฐ์ด ์ )
์์คํธ๋ฆฌ ์ฌ์ฉ๋ฒ์ ์ตํ๋ค.
reset --hard
๋์๊ฐ๊ณ ์ถ์ ๋ฒ์ ์ ์ฐํด๋ฆญํ์ฌ,
reset -> hard
ํ๋ฉด ๋๋ค.
revert
git revert๋ ์์คํธ๋ฆฌ์์๋
reverse commit
์ด๋ค.ํ์ฌ ๋ฒ์ ์์ ๋์๊ฐ๊ณ ์ถ์ ๋ฒ์ ๊น์ง, ์ฐจ๋ก๋ก
reverse commit
์ ํด๋ฆญํด์ค๋ค.
git head
ํน์ ๋ฒ์ ์ ๋๋ธ ํด๋ฆญํ๋ฉด ๋๋ค.
์๋ ์ํ๋ก ๋์์ฌ ๋ ์ข์ธก
master
๋ฅผ ๋๋ธํด๋ฆญํ์.
Copy SHA to Clipboard
์ปค๋ฐ ์์ด๋๋ฅผ ํด๋ฆฝ๋ณด๋์ ์ ์ฅํ๋ค.
Git Merge ๋ฐฉ์๋ ํ์ธํ๋ค.
3 way merge
base ๋ธ๋์น์์ A์ B ๋ธ๋์น๊ฐ ๋ถ๊ธฐ๋ ์ํฉ์ผ ๋, A์ B๋ฅผ ๋ณํฉํ๋ฉฐ ์ถฉ๋์ด ๋ ๊ฒฝ์ฐ, ์๋ ๊ณผ์ ์ ํตํด ๋ณํฉํ๋ค.
1) base ๋ธ๋์น์ ๋น๊ตํ์ฌ '์์ ๋์ง ์์ ๋ฒ์ '๊ณผ '์์ ๋ ๋ฒ์ '์ ์ฝ๋๋ฅผ ๊ตฌ๋ถํ๋ค.
2) '์์ ๋ ๋ฒ์ '์ ์ฝ๋๋ฅผ ์ฑํํ์ฌ ์๋ ๋ณํฉํ๋ค. 3) ๋ง์ฝ '์์ ๋์ง ์์ ๋ฒ์ '์ ์ฝ๋๋ฅผ ํ์ธํ ์ ์์ ๊ฒฝ์ฐ์ ์๋์ผ๋ก ๋ณํฉํ๋ค.
Rspec ์คํ์ผ๊ฐ์ด๋๋ฅผ ์ ๋ ํ๊ณ , ์ฉ๋ฒ์ ์ตํ๋ค. ๊ทธ๋ฆฌ๊ณ ํ ์คํธ์ผ์ด์ค๋ฅผ ๊ฐ์ ํ๋ค.
Rubymine์์ rubocop ์ฌ์ฉ๋ฐฉ๋ฒ์ ์ตํ๊ณ , rubocop์์ ๊ถ์ฅํ๋ ์คํ์ผ์ ํ์ตํ๋ค.
์ฌ์๋ ๋๋ถ์ ๋งํฌ๋ฅผ ํตํด ActiveRecord์ exists?
๋ฉ์๋ ์ฉ๋ฒ์ ์ตํ๋ค. ๊ตณ์ด where๋ฅผ ์ฐ์ง ์์๋ ๋๋๋ผ!
Affimation (์๊ธฐ ์ ์ธ)
๋๋ ๊ฒธ์ํ ์ค์ค๋ก์ ๋ถ์กฑํจ์ ์ธ์งํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ถ์กฑํจ์ ์ ๊ทน์ ์ผ๋ก ๋ฉ๊พธ์ด
๊ฒฐ๊ตญ ์ฑ์ฅํ๋ ๊ฐ๋ฐ์๋ค.
Last updated