[Git/Github] git diff, log, .gitignore

soyiยท2021๋…„ 3์›” 13์ผ
0

Git / Github

๋ชฉ๋ก ๋ณด๊ธฐ
6/9
post-thumbnail

๐Ÿ’ป ๋ณ€๊ฒฝ ๋‚ด์šฉ๊ณผ ์ปค๋ฐ‹ ๋กœ๊ทธ ํ™•์ธํ•˜๊ธฐ, ๋ฒ„์ „ ๊ด€๋ฆฌ์—์„œ ์ œ์™ธํ•˜๊ธฐ


๐Ÿ“Œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ํ™•์ธํ•˜๊ธฐ : git diff

git diff ๋ช…๋ น์€ ํŒŒ์ผ์˜ ๊ตฌ์ฒด์ ์ธ ์ˆ˜์ • ๋‚ด์šฉ, ์–ด๋–ค ๋ผ์ธ์„ ์ถ”๊ฐ€ํ–ˆ๊ณ  ์‚ญ์ œํ–ˆ๋Š”์ง€๊ฐ€ ๊ถ๊ธˆํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

  • ๊ธฐ๋ณธ์ ์œผ๋กœ unstaged ์ƒํƒœ์ธ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ ๋ถ€๋ถ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • staged ์ƒํƒœ์ธ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ ๋ถ€๋ถ„์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” --staged ๋˜๋Š” --cached ์˜ต์…˜์„ ์ค€๋‹ค.
$ git diff 	// unstaged ํŒŒ์ผ๊ณผ repo์˜ ์ตœ์‹  ๋ฒ„์ „ ๋น„๊ต

// staged ํŒŒ์ผ๊ณผ repo์˜ ์ตœ์‹  ๋ฒ„์ „ ๋น„๊ต
$ git diff --staged	
$ git diff --cached

๐Ÿ“Œ commit history ํ™•์ธํ•˜๊ธฐ : git log

์ €์žฅ์†Œ์˜ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ช…๋ น์€ git log๋‹ค. git log ๋ช…๋ น์„ ์ž…๋ ฅํ•˜๋ฉด repository์˜ commit history๋ฅผ ์‹œ๊ฐ„์ˆœ์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค. ์ฆ‰, ๊ฐ€์žฅ ์ตœ๊ทผ์˜ ์ปค๋ฐ‹ ๋กœ๊ทธ๊ฐ€ ๊ฐ€์žฅ ์œ„์— ๋‚˜์˜จ๋‹ค.

$ git log
commit ca82a6dff817ec66f44342007202690a93763949		// commit hash
Author: Scott Chacon <schacon@gee-mail.com>		// ์ž‘์„ฑ์ž ์ •๋ณด
Date:   Mon Mar 17 21:52:11 2008 -0700			// ๋ฒ„์ „ ๋งŒ๋“  ๋‚ ์งœ

    changed the version number		// ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€
    ...
  • --stat ์˜ต์…˜์€ ์ปค๋ฐ‹๊ณผ ๊ด€๋ จ๋œ ํŒŒ์ผ์„ ํ•จ๊ป˜ ๋ณด์—ฌ์ค€๋‹ค.
  • -p ์˜ต์…˜์€ ๊ฐ ์ปค๋ฐ‹์˜ diff ๊ฒฐ๊ณผ๋ฅผ ํ•จ๊ป˜ ๋ณด์—ฌ์ค€๋‹ค.
  • -(n) ์˜ต์…˜์€ ์ตœ๊ทผ n๊ฐœ์˜ ๊ฒฐ๊ณผ๋งŒ ๋ณด์—ฌ์ค€๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด -2๋ฅผ ์˜ต์…˜์œผ๋กœ ์ฃผ๋ฉด ์ตœ๊ทผ 2๊ฐœ์˜ ์ปค๋ฐ‹ ๋กœ๊ทธ๋งŒ ๋ณด์—ฌ์ค€๋‹ค.

๐Ÿ“Œ ๋ฒ„์ „ ๊ด€๋ฆฌ ์ œ์™ธ ํ•˜๊ธฐ : .gitignore

Git์˜ ๋ฒ„์ „ ๊ด€๋ฆฌ๊ฐ€ ํ•„์š” ์—†๋Š” ํŠน์ • ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์žˆ๋‹ค๋ฉด .gitignore ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด ๋ชฉ๋ก์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฃผ๋กœ ๋นŒ๋“œ ์‹œ์Šคํ…œ์ด ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•œ ํŒŒ์ผ์ด ์ด ๋ชฉ๋ก์— ํฌํ•จ๋œ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด .gitignore ํŒŒ์ผ์— ๋ฌด์‹œํ•  ํŒŒ์ผ ํŒจํ„ด์„ ์ž‘์„ฑํ•œ๋‹ค.

# ํ™•์žฅ์ž๊ฐ€ .a์ธ ํŒŒ์ผ ๋ฌด์‹œ
*.a

# ์œ— ๋ผ์ธ์—์„œ ํ™•์žฅ์ž๊ฐ€ .a์ธ ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ฒŒ ํ–ˆ์ง€๋งŒ lib.a๋Š” ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ
!lib.a

# ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” TODOํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ณ  
# subdir/TODO์ฒ˜๋Ÿผ ํ•˜์œ„๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ
/TODO

# build/ ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ๋ชจ๋“  ํŒŒ์ผ์€ ๋ฌด์‹œ
build/

# doc/notes.txt ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜๊ณ  doc/server/arch.txt ํŒŒ์ผ์€ ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ
doc/*.txt

# doc ๋””๋ ‰ํ† ๋ฆฌ ์•„๋ž˜์˜ ๋ชจ๋“  .pdf ํŒŒ์ผ์„ ๋ฌด์‹œ
doc/**/*.pdf
  • github์—์„œ๋Š” ๋‹ค์–‘ํ•œ .gitignore ์˜ˆ์ œ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋‹ค.



References

profile
ใƒพ(^โ–ฝ^*)))

0๊ฐœ์˜ ๋Œ“๊ธ€