2023. 5. 9. 17:22ใgit
(์จ๋ผ์ธ ํด๋ผ์ฐ๋)
GitHub: Let’s build from here
GitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and fea...
github.com
๊นํ๋ธ์ ์ด๋ ํ ํ์ผ์ ์ ์ฅํ๋ ค๋ฉด ์ ์ฅํ ์ ์๋ ๊ณต๊ฐ(=Repository)์ ๋ง๋ค์ด์ผ ํจ.
ํ์๊ด๋ฆฌ๋ฅผ ์ํด pc์ ๊น ์ ์ฅ์ ์ฐ๊ฒฐ ์์ ์ด ํ์.
> git ์ฌ์ฉ
Git
git-scm.com
ํด๋น pc ์ด์์ฒด์ ์ ๋ง๋ exe ํ์ผ ๋ค์ด๋ก๋ ํ์ฌ ์ค์น
๊น ์์ ์์
1. ๊น ์ ์ฅ์(remote repository)์ ์ฐ๊ฒฐ๋ ์ ์๋ pc์ ํน์ ํด๋(local repository) git_test ์์ฑ
2. local repository๋ก ์ฌ์ฉํ๊ธฐ ์ํด ๋ง๋ ํด๋ ์์ผ๋ก ์ผ๋ก ๋ค์ด๊ฐ
> ๋ง์ฐ์ค ์ฐ์ธก ํด๋ฆญํ์ฌ git bash here ํด๋ฆญ
> ๊ฒ์ ๋ช ๋ น์ด ์ฐฝ ๋ธ
3. git ์ฌ์ฉ์ ์ง์ (pc๋น ์ต์ด 1๋ฒ๋ง)
git config --global user.name : ์ฌ์ฉ์์ ์ด๋ฆ ํ์ธ ๋ช ๋ น์ด
git config --global user.name "๊ณ์ ๋ช " : ํ์ฌ pc์ ๊ณ์ ์ค์ (๊ณ์ ๋ช ์๋ github์ name)
4. ์ฌ์ฉ์ ์ด๋ฉ์ผ ์ง์
git config --global user.email "์ด๋ฉ์ผ" : ํ์ฌ pc์ ์ด๋ฉ์ผ ํ์ธ ๋ช ๋ ์ด
git config --global user.email "์ด๋ฉ์ผ" : ํ์ฌ pc์ ์ด๋ฉ์ผ ์ค์ (์ด๋ฉ์ผ์๋ github ๊ฐ์ email)
5. ์ค์ง์ ์ธ local repository ํด๋ ์์ฑ
git init : local repository ํด๋ ์์ฑ ๋ช ๋ น์ด
๋ช ๋ น์ด ์น๋ฉด 1.์์ ์์ฑํ ํด๋์ ์จ๊น ํด๋๋ก .git ํด๋๊ฐ ์๊น
> ์ค์ง์ ์ธ local repository์
์ฝ๊ฒ ์ดํดํ์๋ฉด, 1.์์ ์์ฑํ ํด๋(git_test)๊ฐ local repository ์ญํ ์ ํ๋ค๊ณ ์๊ฐํ๋ฉด ๋จ.
6. ๊น์ ์๊ฒฉ ์ ์ฅ์์ pc์ ๋ก์ปฌ ์ ์ฅ์๋ฅผ ์ฐ๊ฒฐ
์ฐ๊ฒฐ ๋ช ๋ น์ด : git remote add origin https://github.com/byeol93/my-first-test-repo.git (์๊ฒฉ์ ์ฅ์ url)
์๊ฒฉ ์ ์ฅ์ url์ ๊น์ ์์ฑํ ์๊ฒฉ ์ ์ฅ์์ ๋ค์ด๊ฐ๋ฉด ์ ์ ์์
git remote -v : ์ฐ๊ฒฐํ ์๊ฒฉ ์ ์ฅ์ ์ฃผ์ ๋ณด์ฌ์ฃผ๋ ๋ช ๋ น์ด
git_test ํด๋์ ์๋ก์ด ํ์ผ์ ์ ์ฅํ๋ค๊ณ ํด์ ๊ทธ๊ฒ github์ ์ ์ฅ๋๋ ๊ฒ์ด ์๋
git_test์ ๊นํ ์คํธ๋ฌธ์.txt ํ์ผ ํ๋ ์์ฑํ์ฌ ์ ์ฅ ํ
git status ๋ช ๋ น์ด๋ก git ์ํ๋ฅผ ํ์ธํ๋ฉด ํ์ผ ์๋ค๊ณ ๋ธ!
7. git์ ์ค์ ๋ก ์๋ก์ด ํ์ผ์ ์ถ๊ฐํจ์ ์๋ ค์ฃผ๋ ๋ช ๋ น์ด ํ์.
git add . : ๊น์ ์ง์ญ์ ์ฅ์์ ๋ชจ๋ ํ์ผ์ ์ถ๊ฐ
> ์๋ก์ด ํ์ผ์ด ์๋ค๊ณ ๋์ด
* git add . ํ์ผ๋ช .ํ์ฅ์ : ํน์ ํ์ผ ์ถ๊ฐ
7.1 ์ง์ญ ์ ์ฅ์์ ๋ฐ์ดํฐ ์ ์ฅ(๋ณ๊ฒฝ, ์ถ๊ฐ, ์ญ์ )
- ์ง์ญ ์ ์ฅ์๋ฅผ ๊ฐ๊ธฐ ์ ์ ๋จผ์ ๊ฑฐ์น๋ ์ฅ๋ฐ๊ตฌ๋๊ฐ ์๋ค๊ณ ์๊ฐํ๋ฉด ํธํจ.
git add . : ์ฅ๋ฐ๊ตฌ๋์ ๋ด๋ ๊ฒ.
- ์ฅ๋ฐ๊ตฌ๋์ ๋ด์ ํ์ผ์ ์ง์ญ ์ ์ฅ์์ ์ ์ฅํ๋ ๋ช ๋ น์ด : git commit -m "์ปค๋ฐ ๋ฉ์์ง"
๋๋์๊ฐ ์์ ๋ง๋๋ ๋ช ๋ น์ด์
์ค์ ๋ก ํ์ผ๋ช ์ด ๋ฐ๋๋ ๊ฒ์ ์๋.
8. ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๊ธฐ
์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๋ ๋ช ๋ น์ด: git push origin master
๊น ์๋ก๊ณ ์นจ ํ๋ฉด ์๋์ฒ๋ผ ํ์ผ ์ฌ๋ผ๊ฐ ๊ฒ ํ์ธ ๊ฐ๋ฅ
------์ง๊ธ๊น์ง ์์๋ ์ฒ์ ๊นํ๋ธ์ ํ์ผ ์ฌ๋ฆด ๋์ ๊ฒฝ์ฐ.
์ต์ด ๊นํ๋ธ์ ์ฐ๊ฒฐ ์๋ฃ๋ ์ํ๋ฉด 7๋ฒ๋ถํฐ ๋ง์ง๋ง๊น์ง ๋ฐ๋ณต!
์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฐ ํ์ผ์ ๋ก์ปฌ ์ ์ฅ์์ ํ์ผ ์ญ์ ํ ๊ฒฝ์ฐ์๋
git add .
git commit -m "๋ฉ์์ง"
git pust origin master
๋ช ๋ น์ด ์ฐจ๋ก๋๋ก ์คํํด์ค์ผ ์๊ฒฉ ์ ์ฅ์์์๋ ์ญ์ ๋จ!
git์ ํ๋ก์ ํธ ์ฌ๋ฆฌ๊ธฐ
1. ๊น์ ์๊ฒฉ ์ ์ฅ์ ์์ฑ
2. ๊น์ ์ฌ๋ฆด ํ๋ก์ ํธ๊ฐ ์๋ ํด๋๋ก ๋ค์ด๊ฐ์ ๋ง์ฐ์ค ์ฐ์ธก ํด๋ฆญํ์ฌ git bash here ํด๋ฆญ
์๋ ๋ช ๋ น์ด ์ฌ์ฉํ์ฌ ์๊ฒฉ ์ ์ฅ์์ ๋ก์ปฌ ์ ์ฅ์ ์ฐ๊ฒฐ
* ์ฐ๊ฒฐ ํด์ ๋ฐฉ๋ฒ
.git ํด๋ ์ง์ฐ๋ฉด ์ฐ๊ฒฐ ๋ฐ๋ก ๋๊น.
gitignore ์ฒ๋ฆฌ.
์ txt ํ์ผ์ ์ด์ด์ ๋งจ ์๋์ชฝ์ .classpath .project ์ ๊ณ ์ ์ฅ
git bash here ์คํ
git remote add git remote add origin ์๊ฒฉ ์ ์ฅ์ url ๋ช ๋ น์ด ์คํ
git add . ํ์ฌ ํ์ผ๋ค ์ฅ๋ฐ๊ตฌ๋(?์ ๋ด์
git status๋ช ๋ น์ด ์คํํ๋ฉด
์์ ๋ ํ์ผ์ ๋ฌด์๋์ด ํ์ผ ์ธ์ ์ ํ๋ ๊ฒ ์ ์ ์์.
๋ค ๋๋ฉด ๋ค์ txt ํ์ผ ์ด์ด์ ์ ์ .classpath .project ์ญ์ ํ๊ณ ์ ์ฅ.
commit ๋ช ๋ น์ด ์คํ ํ ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๋ ๋ช ๋ น์ด ์คํ
๊น ํ๋ธ์ ์๋ ๋ฐ์ดํฐ ๋ด๋ ค๋ฐ๊ธฐ
- ๋ ๋ค๋ฅธ pc์ ์ฐ๊ฒฐํ์ฌ ๋ด๋ ค ๋ฐ๋ ๋ฒ.
pc์ ๋ก์ปฌ ์ ์ฅ์ ํด๋ ๋ง๋ค๊ณ ํด๋ ์์ ๋ค์ด์์ git bash here ํด๋ฆญ
๊ณ์ ๋ช ๊ณผ ์ด๋ฉ์ผ ๋จผ์ ๋ฃ๊ธฐ
์๊ฒฉ ์ ์ฅ์์ ์๋ ๊ฒ ๋ณต์ฌํด์ค๋ ๋ช ๋ น์ด
* clone์ ๋ณต์ฌํ๋ ค๋ ํ๋ก์ ํธ๊ฐ ์๋ ๊ฒฝ์ฐ (์ต์ด๋ง ํด๋น)
$ git clone https://github.com/byeol93/my-second-test-repository.git (์๊ฒฉ ์ ์ฅ์ url)
ํด๋๋ช ์ ์๊ฒฉ์ ์ฅ์๋ช ์ผ๋ก ์๋์ผ๋ก ์์ฑ๋จ.
1. ๋ด๋ ค๋ฐ๊ณ ์ถ์ ํด๋์์ git bash ์คํ
2. git clone ์๊ฒฉ ์ ์ฅ์ url ๋ช ๋ น์ด ์คํ
> ์๊ฒฉ ์ ์ฅ์ ์ด๋ฆ๋๋ก ํ์ผ์ ๊ฐ์ ธ์ด.
ํด๋๋ช ์ ๋ฐ๊พธ๊ณ ์ถ์ ๊ฒฝ์ฐ
ํด๋์ ๋ค์ด๊ฐ์ .git ์ง์์ฃผ๊ณ ๋ฐ์์ง ํด๋ ์ ์ฒด ์ง์ฐ๊ธฐ
์ฌ๋ฆฐ ์ปดํจํฐ์ ํ์ผ๋ช ๊ณผ ๋์ผํ๊ฒ url ๋ค์ ์ ์ด์ฃผ๊ณ ์๋ ๋ช ๋ น์ด ์คํ
$ git clone https://github.com/byeol93/my-second-test-repository.git Git_test
<git clone ์๊ฒฉ ์ ์ฅ์ ์ฃผ์ ํด๋๋ช >
์คํ๋ง ์ผ์ ๋ด๋ ค๋ฐ์ ๊ฒฝ๋ก ์ค์ ํ์ฌ ์ผฌ
import ํ๊ธฐ
๋ค๋ฅธ pc์์ ์์
์์ ํ ๋ค์ ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๊ธฐ.
ํ๋ก์ ํธ ํด๋๋ก ๋ค์ด๊ฐ.
git bash here ํด๋ฆญํ์ฌ git add . ๋ช ๋ น์ด ์คํ ํ git push origin master ๋ช ๋ น์ด๋ก ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๊ธฐ.
github์ ์ฌ๋ฆฐ ๋ฐ์ดํฐ ๋ค์ ๋ด๋ ค ๋ฐ๊ธฐ (์ต์ด ๋ด๋ ค๋ฐ๊ธฐ ์ดํ)
๋ ์ปดํจํฐ์ ํ๋ก์ ํธ๊ฐ ์๋ ๊ฒฝ์ฐ์.
๋ค์ ๋ฐ์ดํฐ ๋ฐ์ ํ๋ก์ ํธ์ ์ง์ญ ์ ์ฅ์์์ git bash here ์คํ
git pull origin master ๋ช ๋ น์ด ์คํ
์ง์์ ์์ ํ ๊ฒ๊น์ง ๋ค ๋ถ๋ฌ์์ง.
์ดํ์ ์ง, ๊ฐ์์ค์์ ๋ฐ๋ณตํ๋ ๋ช ๋ น์ด๋ ์๋์ ๊ฐ์
git pull origin master (๋ด๋ ค ๋ฐ์)์์ git add .git commit -m "์ปค๋ฐ๋ฉ์์ง"git push origin master
๋ค๋ฅธ ๋ฐฉ๋ฒ.
github์ ์๊ฒฉ ์ ์ฅ์ ์์ฑ ์ ์ฅ์ ์ด๋ฆ์ ์คํ๋ง ํ๋ก์ ํธ ์ด๋ฆ๊ณผ ๋์ผํ๊ฒ
ํ๋ก์ ํธ ์์ค๊ฐ ๋ค์ด์๋ ํด๋ ์์ฒด๋ฅผ ๋ก์ปฌ ์ ์ฅ์๋ก ์ฌ์ฉ
์ ํ์ผ์ ์ ๋ก๋ ํ๋ ค๋ ํ๋ก์ ํธ ํด๋์ ๋ถ์ฌ ๋ฃ๊ธฐ.
์คํ๋ง์์ ํ๋ก์ ํธ ์ฐ์ธก ํด๋ฆญ team - share project ํด๋ฆญ
์๋ v ํ์ ๋ฐ๋ผ ํด๋ฆญ ํ ๋ก์ปฌ ์ ์ฅ์ ๋ง๋ค๊ธฐ
์๊ฒฉ ์ ์ฅ์์ ๋ก์ปฌ ์ ์ฅ์ ์ฐ๊ฒฐ
์คํ๋ง์ผ๋ก ๋์์์ ๊น ํ์คํํฐ๋ธ ํด๋ฆญ
์์์ ์ด๋ฆฐ git package Explorer์์ ํ๋ก์ ํธ ํ์ดํ ์ด์ด์ Remotes ์ฐ์ธก ํด๋ฆญ
๋ง์ง๋ง ์ฒดํฌ ๋ฐ์ค๋ ์ฒดํฌ ํด์ ํด๋ ๋ฌด๋ฐฉ.
password๋ ํ ํฐ์ ์ฌ์ฉํด์ผ ํจ.
ํ ํฐ์ github์ settings์์ ์ค์
note์ sample ์ ๊ณ ์๋ ์ด๋ก ๋ฒํผ ์ ๋๋ ์ด์ ํด๋ฆญํ์ฌ ํ ํฐ ๋ฐ๊ธ
์๋ฐ ํ์คํํฐ๋ธ์์ team-์ฑํฌ๋ก๋์ด์ฆ ์ํฌ์คํ์ด์ค ์ค์
์ฑํฌ๋ก๋์ด์ฆ ํ์คํํฐ๋ธ์์ ์ฌ์ด๋ ๋ฒํผ๋ค์ ๋ณด๋ฉด ์๋ ํ๋์ ํ์ดํ ๋ฒํผ : ๋ด๊ฐ ๊น์์ ๋ฐ์ ์ ์๋ ํ์ผ๋ค ๋ชฉ๋ก
ํ์ ํ์ดํ ๋ด๊ฐ ๊น์ ์ฌ๋ฆด ์ ์๋ ํ์ผ๋ค ๋ชฉ๋ก
ํ๋จ์ git Staging
++ ์ด๋ก ๋ฒํผ ๋๋ฅธ ๊ฒ ๋ช ๋ น์ด๋ก ๋ฐ์ง๋ฉด add . ์ ๋์ผ
commit and push ๋๋ฅด๊ธฐ
git์ ์ ๋ก๋ ๋จ!
'git' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
branch ๊ธฐ๋ฅ (0) | 2023.05.11 |
---|---|
git - ํ๋ก์ ํธ ์ ๋ก๋ (0) | 2023.05.10 |