์ฌ์ฉ์๋ก๋ถํฐ ์๋ฅผ ์ ๋ ฅ๋ฐ์ ์ฌ์น์ฐ์ฐ์ ์ํํ๋
Java๊ธฐ๋ฐ์ ๊ณ์ฐ๊ธฐ ํ๋ก๊ทธ๋จ
โ
์ฌ์น์ฐ์ฐ (๋ง์
, ๋บ์
, ๊ณฑ์
, ๋๋์
)
โ
ํ์ฌ ์ฐ์ฐ ๊ฒฐ๊ณผ๊ฐ ๋ณด๋ค ํฐ ์ด์ ์ ์ฐ์ฐ ๊ฒฐ๊ณผ๊ฐ๋ค ์ถ๋ ฅ
โ
์์ธ ์ฒ๋ฆฌ (์ฌ์ฉ์ ์
๋ ฅ, ๋๋์
etc.)
โ
์คํ ์ข
๋ฃ
โ ๋ฌธ์
! [rejected] main -> main (non-fast-forward)
error: failed to push some refs to 'https://github.com/.../'
โ ์์ธ
non-fast-forward: ๋ก์ปฌ๊ณผ ์๊ฒฉ ๋ธ๋์น๊ฐ ์๋ก ๋ค๋ฅธ ์ปค๋ฐ์ ํฌํจํจ.
--> ์๊ฒฉ์ README.md ์์ฑ ์ปค๋ฐ์ด ๋ก์ปฌ ๋ธ๋์น ์ปค๋ฐ ๊ธฐ๋ก์๋ ์กด์ฌ X
git pull ๊ฑฐ๋ถ: pull ๋ช
๋ น์ด๋ fetch+merge ์ผ๋ก, merge๋ ๊ณตํต๋ commit ์ง์ ์ด ์กด์ฌํด์ผ ๊ทธ ์ง์ ๋ถํฐ ๋ณํฉํจ.
--> ์ฒซ ์ปค๋ฐ์ด๋ฏ๋ก ๊ณตํต๋ commit ์ง์ ์ด ์์์
โ ํด๊ฒฐ
1. ๊ฐ์ push
git push origin main --force
--forece ์ต์
์ผ๋ก ๊ฐ์ push2. ์ฐ๊ด ์๋ ์ ์ฅ์ ๋ณํฉ ์ต์
git pull origin master --allow-unrelated-histories
--allow-unrelated-histories ์ต์
์ผ๋ก ์ฐ๊ด ์๋ ์ ์ฅ์๋ผ๋ฆฌ ๋ณํฉ3. ์ถฉ๋ ํ์ผ ์ง์ ์์
์ถฉ๋ ํ์ผ์ ๋ก์ปฌ์์ ์ง์ ์์ ํ ํ ๋ค์ ์ปค๋ฐ ์๋
--> ์ถฉ๋๋ ํ์ผ์ด ๋ก์ปฌ์ ์กด์ฌํ์ง ์์ผ๋ฏ๋ก ์๋๋ ํ์ง ์์
์ด๊ธฐ ํ๋ก์ ํธ ์ค์ ์ด๋ฏ๋ก 1๋ฒ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ ๊ฐ์ push ํ์์
๊ทธ ํ ์๊ฒฉ์์ ๋ค์ README.md ์์ฑ ํ git pull์ ํตํด ๋ฐ์์ค๋ ๊ฒ์ผ๋ก ์ถฉ๋ ํด๊ฒฐ
โ ๋ฌธ์
ArithmeticCalculator ํด๋์ค์์ ์์ธ ๋ฐ์ ์ App ํด๋์ค๊น์ง ์์ธ ์ ๋ฌ๋์ง ์๋ ์ํฉ
โ ์์ธ
ArithmeticCalculator ํด๋์ค ๋ด๋ถ์์ throws๋ฅผ ์ฌ์ฉํ์ง ์์ ์์ธ ์ ๋ฌ์ด ๋์ง ์์โ ํด๊ฒฐ
App ํด๋์ค๊น์ง ์์ธ ์ ๋ฌ์ ํ์ฌ ์์ธ ๋ฐ์ ์ ํ๋ก๊ทธ๋จ์ด ๋ค์ ์
๋ ฅ๋ฐ๋ ๋ถ๋ถ์ผ๋ก ๋์๊ฐ ์ ์๊ฒ๋ ๋ณ๊ฒฝโ ๋ฌธ์
'ClassName'์(๋) abstract๋ก ์ ์ธ๋๊ฑฐ๋ 'Number'์์ ์ถ์ ๋ฉ์๋ 'intValue()'์(๋ฅผ) ๊ตฌํํด์ผ ํฉ๋๋ค
โ ์์ธ
public class ClassName <T> extends Number {
...
}
extends ํค์๋ ์ฌ์ฉextends์ ํผ๋โ ํด๊ฒฐ
public class ClassName <T extends Number> {
...
}
extends๋ฅผ ์ ์ธํ์ฌ ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ค๋ฆญ ํ์
ํ์ ์ฌ์ฉํํฐ ๋์๊ฒ ๋ณต๊ตฌ๋ ์ถ์ ์ด ํธํ๊ฒ๋ ๊ธฐ๋ฅ ๋จ์๋ก ์ปค๋ฐ์ ํ๋ผ๊ณ ํผ๋๋ฐฑ ๋ฐ์.
๊ธฐ๋ฅ ๊ฐ๋ฐ ์ค์ ๋งํ๋ฉด ๋ค๋ฅธ ๊ธฐ๋ฅ ์์
์ ํ๋ ์ต๊ด์ด ์์๋๋ฐ, ์ฒด๊ณ์ ์ผ๋ก ์์
ํ์ฌ ์ปค๋ฐ ๋จ์๋ฅผ ์ค์ํ๋ ค๊ณ ํจ.
---> ์ปค๋ฐ ๋ก๊ทธ๋ฅผ ํตํ ์์
๋ด์ญ ์ถ์ ์ด ํธ๋ฆฌ
์ปค๋ฐ ๋ฉ์ธ์ง ์์ฑ ์ ์ปค๋ฐ ์ปจ๋ฒค์ ์ ๋ฐ๋ผ ์ด๋ฒ ์ปค๋ฐ์์ ์ด๋ค ์์ ์ ํ๋์ง ๋ช ์
Header : commit message
โป Header: Feat, Fix, Refactor, Chore... etc.
PR(Pull Request) ๋ฅผ ํตํด PR ๋ฉ์์ง ์ปจ๋ฒค์
๊ณผ ๋ผ๋ฒจ, ์์
์ ์ถ๊ฐ ๋ฑ์ ๊ธฐ๋ฅ์ ์ตํ๊ณ ํ๋ก์ ํธ์ ์ ์ฉ ์๋ํจ

์ฑ ์คํ ํ๋ฆ (๐ดApp ํด๋์ค, ๐ขArithmeticCalculator ํด๋์ค)
๐ดํ๋ก๊ทธ๋จ ์์ --> ๐ด๋ฐ๋ณต (๐ด์ฌ์ฉ์ ์ ๋ ฅ --> ๐ข์ฐ์ฐ --> ๐ด๊ณ์ฐ ๊ฒฐ๊ณผ ์ถ๋ ฅ --> ๐ข๋ ํฐ ์ด์ ๊ฒฐ๊ณผ๊ฐ ๋ถ๋ฌ์ค๊ธฐ --> ๐ด๋ ํฐ ์ด์ ๊ฒฐ๊ณผ๊ฐ๋ค ์ถ๋ ฅ) --> ๐ด์ข ๋ฃ
---> throws๋ฅผ ์ฌ์ฉํ์ฌ ArithmeticCalculator์์ App์ผ๋ก ์์ธ ์ ํํ์ฌ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ
incetanceof๋ก ์ ๋ค๋ฆญ์ผ๋ก ๋์ด์ฌ ์ ์๋ Integer, Double์ ๊ตฌ๋ถํ์ฌ ๊ฐ๊ฐ์ ๋ง๊ฒ ์ฒ๋ฆฌํ ์ ์๋๋ก ์ฝ๋๋ฅผ ์์ ํจfor ๋ฌธ ์ฌ์ฉ์ด ๋ ์ต์ํ์ง๋ง, ์คํธ๋ฆผ์ ์ปฌ๋ ์
์ ์ ์ฉํ๋ ์ฝ๋๊ฐ ๋ณด๋ค ๊ฐ๊ฒฐํด์งhttps://inpa.tistory.com/entry/JAVA-%E2%98%95-%EC%A0%9C%EB%84%A4%EB%A6%ADGenerics-%EA%B0%9C%EB%85%90-%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%B3%B5%ED%95%98%EA%B8%B0
https://maybe-b50.tistory.com/155