Git , Github

[git | github]

mandelina 2022. 3. 31. 17:59

๐Ÿš€git ๊ณผ github?

 

git : ๋ถ„์‚ฐ ๋ฒ„์ „๊ด€๋ฆฌ ํˆด

 

github : git์„ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ์›น ํ˜ธ์ŠคํŒ… ์„œ๋น„์Šค

            ์ฆ‰, git์„ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ œ๊ณตํ•˜๋Š” ๊ณต๊ฐ„

 

(๋‹จ์ˆœํžˆ ์ €์žฅ์†Œ ์—ญํ•  ๋ฟ๋งŒ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์˜ ์ธ๊ธฐ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ๋ณผ์ˆ˜์žˆ๊ณ  , ์ด์Šˆ๋ฅผ ์ œ๊ธฐํ•  ์ˆ˜ ์žˆ๋‹ค.)

์ถœ์ € : ์œ„๋‹ˆ๋ธŒ

 

 

 


 

 

๐Ÿš€git

 

 ๐Ÿฅฒ   ํ•ด๋‹นํด๋”๊ธฐ์ค€์œผ๋กœ .git(๋กœ์ปฌ์ €์žฅ์†Œ)๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.

$ git init

 

 ๐Ÿฅฒ ํŒŒ์ผ ์ƒํƒœ ํ™•์ธ

$ git status

-  untracked : ๊ด€๋ฆฌ๋Œ€์ƒ์ด ์•„๋‹˜ (ํ•œ๋ฒˆ๋„ git addํ•˜์ง€์•Š์€ ์ƒํƒœ)

-  Tracked : ๊ด€๋ฆฌ๋Œ€์ƒ์ž„ (git์ด ๊ด€๋ฆฌํ•˜๋Š” ํŒŒ์ผ)

 

 

๐Ÿฅฒ  ๋ณ€๊ฒฝ์‚ฌํ•ญ ํ™•์ธ

$ git diff

 

๐Ÿฅฒ  ์ปค๋ฐ‹ ํžˆ์Šคํ† ๋ฆฌ ์กฐํšŒ 

$ git log

 

๐Ÿฅฒ ๋ฌด์‹œํ•  ํŒŒ์ผ ์ถ”๊ฐ€ ( .gitignore )

 

# a comment - ์ด ์ค„์€ ๋ฌด์‹œํ•œ๋‹ค.
# ํ™•์žฅ์ž๊ฐ€ .a์ธ ํŒŒ์ผ ๋ฌด์‹œ
*.a
# ์œ— ์ค„์—์„œ ํ™•์žฅ์ž๊ฐ€ .a์ธ ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ฒŒ ํ–ˆ์ง€๋งŒ lib.a๋Š” ๋ฌด์‹œํ•˜์ง€ ์•Š๋Š”๋‹ค.
!lib.a
# ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” TODOํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ณ  subdir/TODO์ฒ˜๋Ÿผ ํ•˜์œ„๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜์ง€ ์•Š๋Š”๋‹ค.
/TODO
# build/ ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ๋ชจ๋“  ํŒŒ์ผ์€ ๋ฌด์‹œํ•œ๋‹ค.
build/
# `doc/notes.txt`๊ฐ™์€ ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ณ  doc/server/arch.txt๊ฐ™์€ ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜์ง€ ์•Š๋Š”๋‹ค.
doc/*.txt
# `doc` ๋””๋ ‰ํ† ๋ฆฌ ์•„๋ž˜์˜ ๋ชจ๋“  .txt ํŒŒ์ผ์„ ๋ฌด์‹œํ•œ๋‹ค.
doc/**/*.txt

 

๐Ÿš€github

 

1. git clone

- ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ฝ”๋“œ๋ฅผ ์ปดํ“จํ„ฐ์— ๋ฐ›์•„์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

$ mkdir filename
$ cd filename
$ git clone https://github.com/id/clone-filename.git .

( . )์˜ ์˜๋ฏธ : ํ˜„์žฌํด๋”์—์„œ ํด๋ก ์„ ๋ฐ›๋Š”๋‹ค.  (์ ์„ ์ฐ์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์ƒˆํด๋” ์ƒ์„ฑ)

 

 

2. git pull

- ์›๊ฒฉ ์ €์žฅ์†Œ์— ์—…๋ฐ์ดํŠธ ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ  ๋ณ‘ํ•ฉํ• ๋•Œ ์‚ฌ์šฉ

$ git pull origin main

 

์ถœ์ € : ์œ„๋‹ˆ๋ธŒ

 

3. git add

- ์ž‘์—…์œ„์น˜ ํด๋”์— ์ž‘์—…ํ•œ ํŒŒ์ผ์ด ์žˆ์„๊ฒฝ์šฐ add๋ฅผ ์ด์šฉํ•ด staging Area๋กœ ์˜ฎ๊น€

   (commit ์ „ ์ž„์‹œ์ €์žฅ์ƒํƒœ)

 

4. git commit

- ์ปค๋ฐ‹๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ• ๋•Œ๋Š” ํ˜„์žฌ ๋ฒ„์ „์— ๋Œ€ํ•œ ๋‚ด์šฉ์„ ๋ช…ํ™•ํžˆ ๋ช…์‹œ

 

5. git push

- commitํ•œ ์ด๋ ฅ์ด repository์— ์ €์žฅ

$ git status
$ git add .
$ git commit -m "์ถ”๊ฐ€ ์ž‘์—… ๋‚ด์—ญ์ž…๋‹ˆ๋‹ค."
$ git push origin main

 

 

<pull , add commit push ์˜ˆ์‹œ ์‚ฌ์ง„>

์ถœ์ฒ˜ : ์œ„๋‹ˆ๋ธŒ

 

 

 

๐Ÿš€html - forms

 

<Form>

- ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๋Š” ์˜์—ญ       

- ํผ์— ์ž…๋ ฅํ•˜๊ณ  ์ œ์ถœํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋Š” ์„œ๋ฒ„๋กœ ์ „์†ก, ์ „์†กํ•œ ๋ฐ์ดํ„ฐ๋Š” ์›น์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•˜์—ฌ

๊ฒฐ๊ณผํ™”๋ฉด์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „์†ก

 

ex) ๋กœ๊ทธ์ธํ™”๋ฉด์—์„œ ์•„์ด๋””, ๋น„๋ฒˆ ์ž…๋ ฅ

     ํšŒ์›๊ฐ€์ž…์‹œ ์ •๋ณด ์ž…๋ ฅ

 

 

๐Ÿฅฒ  ํผ ๋™์ž‘ ๋ฐฉ์‹

1. ์›น ํŽ˜์ด์ง€์— ์žˆ๋Š” form์— ๋ฐ์ดํ„ฐ ์ž…๋ ฅ

2. ์•ก์…˜์ด ์ผ์–ด๋‚˜๋ฉด ๋ฐ์ดํ„ฐ๋Š” ์›น ์„œ๋ฒ„๋กœ ์ด๋™

3. ์›น์„œ๋ฒ„๋Š” ๋ฐ์ดํ„ฐ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด APP ํ˜ธ์ถœ (app์€ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ณ„๋„์˜ ์„œ๋ฒ„์ผ์ˆ˜ ์žˆ๋‹ค.)

4. ํ•„์š”์— ๋”ฐ๋ผ APP์€  DB๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก (DB์€ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ณ„๋„์˜ ์„œ๋ฒ„์ผ์ˆ˜ ์žˆ๋‹ค.)

5. DB์—์„œ CRUD ์ž‘์—…์ด ์ผ์–ด๋‚˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ APP ,WEB์œผ๋กœ ์ „์†ก

6. ์›น ์„œ๋ฒ„๋Š” ๋ฐ›์€ ๊ฒฐ๊ณผ๋ฅผ Client ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ „์†ก

7. ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ €๋Š” Response ๋ฐ›์€ ํŽ˜์ด์ง€๋ฅผ ๋ Œ๋”๋งํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์—ฌ์คŒ

 

 

 

๐Ÿฅฒ  get : url๋กœ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค. 

 

๐Ÿฅฒ  post : url์ด ์•„๋‹Œ body๊ฐ’์œผ๋กœ ๋ณด๋‚ธ๋‹ค.

 

(์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค๋ฅธ ํฌ์ŠคํŒ…์—์„œ)

 

 

 

๐ŸŒˆ๊ทธ๋ฐ–์—

  • ๋งˆํฌ๋‹ค์šด ๋ฌธ๋ฒ•์„ ์•Œ์•„๋‘์ž (๋‹ค์–‘ํ•œ๊ณณ์—์„œ ์ž์ฃผ ์“ฐ์ธ๋‹ค.)
  • url์€ ํ•œ๊ธ€์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ธ์ฝ”๋”ฉํ•ด์„œ ์‚ฌ์šฉ๋œ๋‹ค.
  • CLI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  : ํ˜ธํ™˜์„ฑ ๋•Œ๋ฌธ์— GUI์—์„œ์˜ ํ•œ๊ณ„๊ฐ€ ์ƒ๊ธด๋‹ค.
  • js๊ณต๋ถ€๊ฐ€ ์ œ์ผ ์ค‘์š”ํ•˜๋‹ค.
  • ๋™์˜์ƒ 3๋ฐฐ์†ํ•˜๊ธฐ (๊ฟ€ํŒ)
document.getElementsByTagName("video")[0].playbackRate = 3;

 

๐Ÿ”ฅ ํšŒ๊ณ 

git๊ณผ github๋ฅผ ๊ณต๋ถ€ํ•˜์ž ํ•˜๊ณ  ์ •์ž‘ ์ œ๋Œ€๋กœ ๊ณต๋ถ€ํ•ด๋ณธ ๊ธฐ์–ต์ด ์—†์—ˆ๋Š”๋ฐ ์ด๋ ‡๊ฒŒ ์ œ๋Œ€๋กœ ๋ฐฐ์šฐ๊ฒŒ ๋˜์–ด ๋‹คํ–‰์ด๋‹ค.

(๊ธฐ๋ณธ๋‚ด์šฉ์ด๊ธฐ ๋•Œ๋ฌธ์— ์‹ฌํ™”๋‚ด์šฉ์€ ์Šค์Šค๋กœ ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค.)

 

formํƒœ๊ทธ๋Š” ์ธํ„ด์ƒํ™œํ•˜๋ฉฐ ํšŒ์›๊ฐ€์ž…,๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๊ตฌํ˜„ํ• ๋•Œ ๊ต‰์žฅํžˆ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ์—ˆ๋Š”๋ฐ ๋‹ค์‹œ ํ•œ๋ฒˆ ๋ณต์Šตํ•˜๋‹ˆ ๊ธฐ์–ต์ด ์ƒˆ๋ก์ƒˆ๋ก ๋‚จ๋Š”๋‹ค. 

 

๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉฐ ๋„คํŠธ์›Œํฌ์ชฝ์ด ์•ฝํ•˜๋‹ค๋Š”๊ฒƒ์„ ๊ณ„์† ๋Š๋ผ๊ณ  ์žˆ๋Š”์ค‘์ด๋‹ค.

๊นŠ๊ฒŒ ํŒŒ์ง„ ์•Š์ง€๋งŒ ๊ธฐ๋ณธ์ ์ธ ๊ฐœ๋…๋“ค์€ ๊ผญ๊ผญ ์•Œ์•„๋‘์–ด์•ผ๊ฒ ๋‹ค.

 

 

 

 

 

 

 

 

 

'Git , Github' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[git] ์‹ค์ˆ˜๋กœ ์‚ญ์ œํ•œ stash๋‚ด์—ญ ๋˜๋Œ๋ฆฌ๊ธฐ  (0) 2022.07.06