Pip: git์—์„œ ์„ค์น˜ํ•  ๋•Œ dependency_links๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ pip๊ฐ€ requirements.txt ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

์— ๋งŒ๋“  2015๋…„ 04์›” 02์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: pypa/pip

์กฐ์ง ๋‚ด์—์„œ python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์„ ์ฐพ์œผ๋ ค๊ณ  ํ•  ๋•Œ ์‚ฌ์šฉ ์ค‘๋‹จ ๋ฉ”์‹œ์ง€๊ฐ€ ์•”์‹œํ•˜๋Š” pip๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ œ์•ˆ๋œ ์ƒํ™ฉ์€ ํ„ฐ๋ฌด๋‹ˆ ์—†์Šต๋‹ˆ๋‹ค.

git ์„œ๋ฒ„์— ๋‹จ์ผ ํŒจํ‚ค์ง€๋ฅผ _์‰ฝ๊ฒŒ__ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๋Œ€๋ถ€๋ถ„์˜ ์กฐ์ง์— ์žˆ์Œ)...๊ทธ๋Ÿฌ๋‚˜ ๋ช‡ ๊ฐ€์ง€ ๋‹ค๋ฅธ ๋‚ด๋ถ€ ํŒจํ‚ค์ง€์— ์˜์กดํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

pip๊ฐ€ dependency_links ์ฒ˜๋ฆฌ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ์ด๋Ÿฌํ•œ ๋ฐฐํฌ ์Šคํƒ€์ผ์ด ์™„์ „ํžˆ ๋ถˆ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‚ด๊ฐ€ ๋ณด๊ธฐ์— npm ์™€ ์™„์ „ํžˆ ๋Œ€์กฐ๋˜์–ด ์ด ์ž‘์—…์„ ์—„์ฒญ๋‚˜๊ฒŒ ์‰ฝ๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๋ฌผ๋ก , ์•”์‹œ์ ์œผ๋กœ ๋งŒ๋“ค์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ git ์ข…์†์„ฑ์ด ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ pip ์„ค์น˜ํ•˜๋Š” ํ•œ ์ค„ ๋ช…๋ น์„ ๋™๋ฃŒ์—๊ฒŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋Š” ์‰ฌ์šด ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด์ƒ์ ์ธ ์†”๋ฃจ์…˜์€ pip๊ฐ€ git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ requirements.txt ํŒŒ์ผ์„ ์ฒ˜๋ฆฌํ•˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋ฏ€๋กœ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ๋‹ค๋ฅธ ์š”๊ตฌ ์‚ฌํ•ญ์„ ๊ตฌ์ฒด์ ์œผ๋กœ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ด๊ฒƒ์€ git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ํ™•์‹คํžˆ ํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์—).

์™„๋ฒฝํ•œ ๊ฒƒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
pip install --follow-requirements git+http://my.internal.gitserver/internallibrary.git

์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์š”๊ตฌ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

auto-locked

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@dstufft ์ด ๋Œ€์ฒดํ’ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ฐœ์ธ Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•ฑ์— ๋‘ ๊ฐœ์˜ ํŒจํ‚ค์ง€ PackageA ๋ฐ PackageB๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฑ์€ PackageA์— ์ข…์†๋˜๊ณ  PackageA๋Š” PackageB์— ์ข…์†๋ฉ๋‹ˆ๋‹ค. ์•ฑ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์„ค์น˜ํ•  ๋•Œ PackageA์˜ ์ข…์†์„ฑ์œผ๋กœ PackageB๋ฅผ ์ž๋™์œผ๋กœ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

์šฐ๋ฆฌ๋Š” (PyPI๊ฐ€ ์ดํ•ดํ•˜๊ณ  ์˜์กดํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ์—…๋กœ๋“œํ•˜์ง€ ์•Š๋„๋ก ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ๋Š”) ๋Œ€์ฒด๊ฐ€ ๊ตฌํ˜„๋  ๋•Œ๊นŒ์ง€ ์ข…์†์„ฑ ๋งํฌ๋ฅผ ์ œ๊ฑฐํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@dstufft ์ด ๋Œ€์ฒดํ’ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ฐœ์ธ Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•ฑ์— ๋‘ ๊ฐœ์˜ ํŒจํ‚ค์ง€ PackageA ๋ฐ PackageB๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฑ์€ PackageA์— ์ข…์†๋˜๊ณ  PackageA๋Š” PackageB์— ์ข…์†๋ฉ๋‹ˆ๋‹ค. ์•ฑ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์„ค์น˜ํ•  ๋•Œ PackageA์˜ ์ข…์†์„ฑ์œผ๋กœ PackageB๋ฅผ ์ž๋™์œผ๋กœ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

@connorbode ๋ฆด๋ฆฌ์Šค๋กœ devpi ์ธ๋ฑ์Šค๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. pip๊ฐ€ devpi๋ฅผ ์ธ๋ฑ์Šค๋กœ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์ข…์†์„ฑ ๋งํฌ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์œผ๋ฉฐ ์ž‘์—… ๋„คํŠธ์›Œํฌ์—์„œ pypi๋ฅผ ๋ฏธ๋Ÿฌ๋ง/์บ์‹œํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰