fastmod.md 1.4 KB

fastmod

codemod ๋„๊ตฌ์— ๋Œ€ํ•œ ๋น ๋ฅธ ๋ถ€๋ถ„ ๊ต์ฒด, ์ „์ฒด ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ๋ถ€๋ถ„ ๋ฐ ๋ชจ๋‘ ๊ต์ฒด. ์ •๊ทœ์‹์€ Rust ์ •๊ทœ์‹ ์ƒ์ž์™€ ์ผ์น˜. ๋” ๋งŽ์€ ์ •๋ณด: https://github.com/facebookincubator/fastmod.

  • .ignore ๋ฐ .gitignore์˜ ํŒŒ์ผ์„ ๋ฌด์‹œํ•˜๊ณ  ํ˜„์žฌ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ๋ชจ๋“  ํŒŒ์ผ์—์„œ ์ •๊ทœ์‹ ํŒจํ„ด์„ ๋ณ€๊ฒฝ:

fastmod {{์ •๊ทœํ‘œํ˜„์‹_ํŒจํ„ด}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}}

  • ํŠน์ • ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ์—์„œ ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ๋ชจ๋“œ๋กœ ์ •๊ทœ์‹ ํŒจํ„ด์„ ๋ณ€๊ฒฝ:

fastmod --ignore-case {{์ •๊ทœํ‘œํ˜„์‹_ํŒจํ„ด}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}} -- {{๊ฒฝ๋กœ/๋Œ€์ƒ/ํŒŒ์ผ ๊ฒฝ๋กœ/๋Œ€์ƒ/๋””๋ ‰ํ„ฐ๋ฆฌ ...}}

  • ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š” glob ํŒจํ„ด์œผ๋กœ ํ•„ํ„ฐ๋ง๋œ ํŒŒ์ผ์˜ ํŠน์ • ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” ์ •๊ทœ์‹ ํŒจํ„ด์„ ๋ณ€๊ฒฝ:

fastmod {{regex}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}} --dir {{๊ฒฝ๋กœ/๋Œ€์ƒ/๋””๋ ‰ํ„ฐ๋ฆฌ}} --iglob {{'**/*.{js,json}'}}

  • .js ๋˜๋Š” JSON ํŒŒ์ผ์—์„œ ์ •ํ™•ํ•œ ๋ฌธ์ž์—ด ๋ณ€๊ฒฝ์„ ์ˆ˜ํ–‰:

fastmod --fixed-strings {{์™„์ „ํ•œ_๋ฌธ์ž์—ด}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}} --extensions {{json,js}}

  • ํ™•์ธ ๋ฉ”์‹œ์ง€ ์—†์ด ์ •ํ™•ํ•œ ๋ฌธ์ž์—ด ๋ฐ”๊พธ๊ธฐ (์ •๊ทœ์‹ ๋น„ํ™œ์„ฑํ™”):

fastmod --accept-all --fixed-strings {{์™„์ „ํ•œ_๋ฌธ์ž์—ด}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}}

  • ํ™•์ธ ๋ฉ”์‹œ์ง€ ์—†์ด ์ •ํ™•ํ•œ ๋ฌธ์ž์—ด์„ ๊ต์ฒดํ•˜๊ณ , ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์„ ์ถœ๋ ฅ:

fastmod --accept-all --print-changed-files --fixed-strings {{์™„์ „ํ•œ_๋ฌธ์ž์—ด}} {{๋Œ€์ฒด๋ฌธ์ž์—ด}}