ํž˜๋‚ด 2.55

๋„์ž… ๋ถ„์‚ฐ ์†Œ์Šค ์ฝ”๋“œ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๋ฆด๋ฆฌ์Šค ํž˜๋‚ด 2.55์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์œผ๋กœ๋Š” Rust๋ฅผ ์‚ฌ์šฉํ•œ ๊ธฐ๋ณธ ๋นŒ๋“œ ํ™œ์„ฑํ™”, ๊ตฌํ˜„ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Linux fsmonitor ํ”„๋กœ์„ธ์Šค, ์ฆ๋ถ„ MIDX ์ธ๋ฑ์Šค ์žฌ๊ตฌ์„ฑ์„ ์œ„ํ•œ ์ƒˆ๋กœ์šด ์ „๋žต, ์ปค๋ฐ‹ ์ˆ˜์ •์„ ์œ„ํ•œ git history fixup ๋ช…๋ น์–ด, ๊ฐ์ฒด ๊ฐ€์šฉ์„ฑ ๋น„ํŠธ๋งต ์ƒ์„ฑ ์ตœ์ ํ™”, ํ›…์˜ ๋ณ‘๋ ฌ ์‹คํ–‰ ์ง€์›, git format-rev ๋ช…๋ น์–ด. Git ์ฝ”๋“œ ๋ฐฐํฌ์ž GPLv2+์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ์ƒˆ ๋ฒ„์ „์—๋Š” ์ด์ „ ๋ฆด๋ฆฌ์Šค์™€ ๋น„๊ตํ•˜์—ฌ 100๋ช…์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฐธ์—ฌํ•˜์—ฌ ์ค€๋น„ํ•œ 505๊ฐœ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ทธ์ค‘ 33๋ช…์€ Git ๊ฐœ๋ฐœ์— ์ฒ˜์Œ ์ฐธ์—ฌํ•œ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.

์ฃผ์š” ํ˜์‹  ์‚ฌํ•ญ (๊นƒํ—ˆ๋ธŒ ๋ธ”๋กœ๊ทธ, gitlab.com/blog, gitlab.com/git-scm):

  • ๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํ•จ ๋œ Rust ์ปดํฌ๋„ŒํŠธ ์ง€์›. rustc ์ปดํŒŒ์ผ๋Ÿฌ. ์ถ”๊ฐ€ ๋นŒ๋“œ ์ข…์†์„ฑ์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. Rust ์—†์ด ๋นŒ๋“œํ•˜๋ ค๋ฉด make ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ NO_RUST=1 ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ meson configure๋ฅผ ์‹คํ–‰ํ•  ๋•Œ -Drust=disabled ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. Rust๋ฅผ ์‚ฌ์šฉํ•œ ๋นŒ๋“œ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์€ Git 3.0๊นŒ์ง€ ์ง€์›๋˜๋ฉฐ, Git 3.0์—์„œ๋Š” Rust๊ฐ€ ์™„์ „ํžˆ ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ํฌํ•จ๋จ ํ•„์ˆ˜ ์ข…์†์„ฑ ์ค‘์—๋Š” Rust ์–ธ์–ด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š”๋ฐ, ์ด ์–ธ์–ด๋Š” SHA-1๊ณผ SHA-256 ํ•ด์‹œ ๊ตฌ์„ฑ ๊ฐ„์˜ ์ด์‹์„ฑ์„ ์œ„ํ•œ ๋ ˆ์ด์–ด์™€ ๊ฐ€๋ณ€ ๊ธธ์ด ์ •์ˆ˜ ์ธ์ฝ”๋”ฉ ๋ฐ ๋””์ฝ”๋”ฉ๊ณผ ๊ฐ™์€ ์ผ๋ถ€ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํ–ฅํ›„์—๋Š” Git์˜ ๋” ์ค‘์š”ํ•œ ๋‚ด๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์ด Rust๋กœ ์žฌ์ž‘์„ฑ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • ์‹คํ—˜ํŒ€์—๊ฒŒgit ๊ธฐ๋ก""git history fixup" ์ž‘์—…์ด ์ปค๋ฐ‹ ๊ธฐ๋ก ์žฌ์ž‘์„ฑ ๋„๊ตฌ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ปค๋ฐ‹ ๊ธฐ๋ก์„ ์žฌ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. fixup ์ž‘์—…์„ ํ†ตํ•ด `git add` ๋ช…๋ น์œผ๋กœ ์ถ”๊ฐ€๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ด์ „ ์ปค๋ฐ‹์œผ๋กœ ์ด๋™ํ•˜๊ณ  ์ดํ›„์˜ ๋ชจ๋“  ์ปค๋ฐ‹์„ ์ž๋™์œผ๋กœ ์žฌ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” `git commit --fixup=` ๋ช…๋ น๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  git rebase --autosquash๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ~.
  • ํ”Œ๋žซํผ์šฉ Linux ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. fsmonitorํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ถ”์ ํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. inotify ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด `git status`์™€ ๊ฐ™์€ ๋ช…๋ น์„ ์‹คํ–‰ํ•  ๋•Œ ์ „์ฒด ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ํƒ์ƒ‰ํ•˜์ง€ ์•Š๊ณ ๋„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ `git install` ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ฝ”์–ด.fs๋ชจ๋‹ˆํ„ฐ".
  • `git repack` ๋ช…๋ น์–ด์— ์ƒˆ๋กœ์šด `--write-midx=incremental` ์˜ต์…˜์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ ์ฆ๋ถ„ MIDX ์ธ๋ฑ์Šค(๋ฉ€ํ‹ฐํŒฉ ์ธ๋ฑ์Šค)์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋Š” ์ƒˆ๋กœ์šด ์ „๋žต์„ ๊ตฌํ˜„ํ•˜์—ฌ ์ „์ฒด ์ธ๋ฑ์Šค๋ฅผ ๋‹ค์‹œ ํŒจํ‚นํ•  ํ•„์š”์„ฑ์„ ์—†์• ์ค๋‹ˆ๋‹ค. ์ฆ๋ถ„ ๋ฉ€ํ‹ฐํŒฉ ์ธ๋ฑ์Šค๋Š” ํŒฉํŒŒ์ผ ์ „์ฒด์— ๊ฑธ์ณ ๊ฐ์ฒด์˜ ๋ถ„ํฌ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ๋‹จ์ผ ๋Œ€ํ˜• ์ธ๋ฑ์Šค ๋Œ€์‹  ๋ ˆ์ด์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ ˆ์ด์–ด๋Š” ํŠน์ • ๊ฐœ์ˆ˜์˜ ํŒฉํŒŒ์ผ์„ ํฌํ•จํ•˜๋ฉฐ ๋ณ„๋„์˜ ๋น„ํŠธ๋งต ํŒŒ์ผ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ๊ธฐ์กด ๋ ˆ์ด์–ด๋ฅผ ์žฌ๊ตฌ์ถ•ํ•˜์ง€ ์•Š๊ณ ๋„ ์ƒˆ ํŒฉํŒŒ์ผ์˜ ๊ฐ์ฒด ์ •๋ณด๋ฅผ ์ธ๋ฑ์Šค์— ์ƒˆ ๋ ˆ์ด์–ด๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ธ๋ฑ์Šค์— ๋ฐ˜์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. `git repack --write-midx=incremental` ๋ช…๋ น์–ด๋Š” ์ตœ๊ทผ์— ์ƒ์„ฑ๋œ ํŒฉํŒŒ์ผ์„ ํฌํ•จํ•˜๋Š” ์ƒˆ ๋ ˆ์ด์–ด๋ฅผ ์ฆ๋ถ„ MIDX ์ธ๋ฑ์Šค์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ƒˆ๋กœ์šด ๋ช…๋ น์–ด๋ฅผ `--geometric repository` ํŒจํ‚น ๋ชจ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ํŒฉํŒŒ์ผ์˜ ์ƒˆ ๊ฐ์ฒด๋ฅผ ํ•˜๋‚˜์˜ ๋” ํฐ ํŒฉํŒŒ์ผ๋กœ ๊ฒฐํ•ฉํ•˜๊ณ , ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ฆ๋ถ„ MIDX ์ธ๋ฑ์Šค์˜ ์ธ์ ‘ํ•œ ์—ฌ๋Ÿฌ ๋ ˆ์ด์–ด๋ฅผ ํŒจํ‚นํ•˜๊ณ  ๋ณ‘ํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ „๋žต์„ ํ†ตํ•ด git repack์€ ์ตœ์ƒ์œ„ ๋ ˆ์ด์–ด๋งŒ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๊ณ  ์ด์ „์˜ ๋” ํฐ ๋ ˆ์ด์–ด๋Š” ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ „์ฒด ๋ ˆ์ด์–ด ์ˆ˜๋ฅผ ์ „์ฒด ๊ฐ์ฒด ์ˆ˜์˜ ๋กœ๊ทธ์— ๋น„๋ก€ํ•˜๋„๋ก ์œ ์ง€ํ•จ์œผ๋กœ์จ ๋ ˆ์ด์–ด ์ฒด์ธ์˜ ๋ฌด๋ถ„๋ณ„ํ•œ ์ฆ๊ฐ€๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ์ฒด ๊ฐ€์šฉ์„ฑ ๋น„ํŠธ๋งต ์ƒ์„ฑ์€ ๋ถˆํ•„์š”ํ•œ ์žฌ๊ท€, ๊ฐ์ฒด ์œ„์น˜ ์บ์‹ฑ, XOR ์—ฐ์‚ฐ ์ „ ๋น„ํŠธ๋งต ์ •๋ ฌ, ๊ทธ๋ฆฌ๊ณ  ์œ ์‚ฌ ๋ณ‘ํ•ฉ ๋น„ํŠธ๋งต ์ƒ์„ฑ์„ ์œ„ํ•œ ์ฝ”๋“œ ์žฌ๊ตฌ์„ฑ ๋“ฑ์„ ์ œ๊ฑฐํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ฐ์ฒด ํŠธ๋ฆฌ ์ˆœํšŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ํฌ๊ฒŒ ์ตœ์ ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.์œ ์‚ฌ ๋ณ‘ํ•ฉํ…Œ์ŠคํŠธ ์ €์žฅ์†Œ์—์„œ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•ด ๋น„ํŠธ๋งต ์ƒ์„ฑ ์‹œ๊ฐ„์ด 612์ดˆ์—์„œ 294์ดˆ๋กœ ๋‹จ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋…๋ฆฝ์ ์ธ ์ž‘์—…์„ ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ›„ํฌ ์„ค์ • ํŒŒ์ผ์—์„œ ๊ณต์œ  ์ƒํƒœ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ฑฐ๋‚˜ ์ด๋ฅผ ๊ณ ๋ คํ•˜๋Š” ํ›„ํฌ(์˜ˆ: ์ปค๋ฐ‹ ๋…ธํŠธ ๋ณ€๊ฒฝ, ์ธ๋ฑ์Šค ๋ฐ ์ž‘์—… ํŠธ๋ฆฌ ๊ฒ€์‚ฌ)๋Š” ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฆฐํ„ฐ ๊ฒ€์‚ฌ ๋ฐ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ํ›„ํฌ๋Š” ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ‘๋ ฌ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ํ›„ํฌ๋Š” `hook.hook_name.parallel = true` ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—… ์ˆ˜๋Š” `hook.jobs` ๋งค๊ฐœ๋ณ€์ˆ˜์— ์˜ํ•ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. .jobs ๋˜๋Š” -j ๋ช…๋ น์ค„ ์˜ต์…˜.
  • ์ด์ œ `git pack-objects --path-walk` ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ `blob:none`, `blob:limit=`์™€ ๊ฐ™์€ ํ•„ํ„ฐ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. , ํŠธ๋ฆฌ:0, ๊ฐ์ฒด:์œ ํ˜•= , ๋“œ๋ฌธ๋“œ๋ฌธ: ๊ทธ๋ฆฌ๊ณ  ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ์—์„œ --path-walk๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๋ธ”๋กญ์„ ๋ฒ„๋ฆฌ๋ฉด ์ƒ์„ฑ๋œ ํŒฉ ํŒŒ์ผ์˜ ํฌ๊ธฐ๊ฐ€ 16% ๊ฐ์†Œํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์ปค๋ฐ‹ ๋ชฉ๋ก์ด๋‚˜ ์ž„์˜์˜ ํ…์ŠคํŠธ์— ์–ธ๊ธ‰๋œ ์ˆ˜์ • ๋ฒ„์ „ ๋ฐ ๊ฐ์ฒด ์ด๋ฆ„์˜ ํ˜•์‹์„ ์ง€์ •ํ•˜๋Š” `git format-rev` ๋ช…๋ น์–ด๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ์ปค๋ฐ‹ ๋ฉ”๋ชจ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ํ›…์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).

git last-modified | git format-rev --stdin-mode=text --format=%an

Junio โ€‹โ€‹โ€‹โ€‹C Hamano ๋‚ด์žฅ/commit.c

  • ์„œ๋ฒ„์—์„œ ์ „์†กํ•˜๋Š” ์ •๋ณด ๋ฉ”์‹œ์ง€ ๋ฐ ์˜ค๋ฅ˜ ํ…์ŠคํŠธ์— ํฌํ•จ๋œ ๋Œ€๋ถ€๋ถ„์˜ ํ„ฐ๋ฏธ๋„ ์ œ์–ด ์‹œํ€€์Šค๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ด์Šค์ผ€์ดํ”„ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ์•…์˜์ ์ธ ์„œ๋ฒ„์— ์ ‘๊ทผํ•  ๊ฒฝ์šฐ, ์ด๋Ÿฌํ•œ ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅ ๋‚ด์šฉ์„ ์ˆจ๊ธฐ๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ปค์„œ ์ด๋™์ด๋‚˜ ํ…์ŠคํŠธ ์ง€์šฐ๊ธฐ ๋“ฑ์— ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ, ์š”์†Œ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฅผ ์œ„ํ•œ ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค ์ง€์›์€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.
  • ์ด์ œ `git checkout -m` ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ถฉ๋Œํ•˜๋Š” ๋กœ์ปฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ž๋™์œผ๋กœ stash ์˜์—ญ์— ์ €์žฅ๋˜๋ฏ€๋กœ ์ฆ‰์‹œ ์ถฉ๋Œ์„ ํ•ด๊ฒฐํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
  • ์ด์ œ `git push` ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹จ์ผ ๋ช…๋ น์œผ๋กœ ์—ฌ๋Ÿฌ ์™ธ๋ถ€ Git ์„œ๋ฒ„์— ๋ธŒ๋žœ์น˜๋ฅผ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฉ”์ธ ๋ธŒ๋žœ์น˜๋ฅผ ๊ธฐ๋ณธ ์„œ๋ฒ„๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฏธ๋Ÿฌ ์„œ๋ฒ„์—๋„ ํ‘ธ์‹œํ•˜๋ ค๋ฉด GitHub, GitLab ๋ฐ ๋ฏธ๋Ÿฌ ์„œ๋ฒ„๋กœ ๊ตฌ์„ฑ๋œ ๊ฒŒ์‹œ ๊ทธ๋ฃน์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

git config remotes.publish "github gitlab mirror"
git push publish main

  • `git log --graph` ๋ช…๋ น์–ด์— `--graph-lane-limit=` ์˜ต์…˜์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ธŒ๋žœ์น˜๋ฅผ ์‹œ๊ฐํ™”ํ•  ๋•Œ ์„ธ๋กœ ๋ง‰๋Œ€์˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œํ•˜์—ฌ ๋ธŒ๋žœ์น˜ ์ˆ˜๊ฐ€ ๋งŽ์€ ์ €์žฅ์†Œ์—์„œ ์ปค๋ฐ‹ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•  ๊ณต๊ฐ„์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

...
* | | | | 619931f561 'dl/posix-unused-warning-clang' ๋ธŒ๋žœ์น˜ ๋ณ‘ํ•ฉ
|\ \ \ \ \
| * | | | ~ cf48887610 compat/posix.h: GIT_GNUC_PREREQ() ๋น„๊ต ๊ฐ„์†Œํ™”
| * | | | ~ ffd45926dc compat/posix.h: GIT_GNUC_PREREQ() ๋ฐ UNUSED ์ •๋ฆฌ
|\ \ \ \ \~
| * | | | ~3f5203eeb4 ls-files: lstat ์ „์— pathspec ํ•„ํ„ฐ๋ง

  • `--max-count-oldest=` ์˜ต์…˜์ด `git log` ๋ฐ `git rev-list` ๋ช…๋ น์–ด์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด ํŠน์ • ๋ฒ”์œ„ ๋‚ด์—์„œ ๊ฐ€์žฅ ์˜ค๋ž˜๋œ N๊ฐœ์˜ ์ปค๋ฐ‹์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : linux.org.ru

DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster