{"id":32696,"date":"2025-10-24T23:41:05","date_gmt":"2025-10-24T20:41:05","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=32696"},"modified":"2025-10-24T23:41:05","modified_gmt":"2025-10-24T20:41:05","slug":"ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/","title":{"rendered":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?<\/h2>\n<p>Python, veri biliminden web geli\u015ftirmeye, otomasyondan yapay zekaya kadar geni\u015f bir yelpazede kullan\u0131lan g\u00fc\u00e7l\u00fc ve \u00e7ok y\u00f6nl\u00fc bir programlama dilidir. Python projeleri genellikle \u00e7ok say\u0131da harici k\u00fct\u00fcphaneye ve pakete ba\u011f\u0131ml\u0131d\u0131r. Bu ba\u011f\u0131ml\u0131l\u0131klar\u0131 etkin bir \u015fekilde y\u00f6netmek, projenin istikrar\u0131, tekrarlanabilirli\u011fi ve s\u00fcrd\u00fcr\u00fclebilirli\u011fi a\u00e7\u0131s\u0131ndan kritik \u00f6neme sahiptir. Geleneksel olarak Python projelerinde <code>pip<\/code> ve <code>venv<\/code> (veya <code>virtualenv<\/code>) kombinasyonu ile ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi yap\u0131l\u0131rken, bu ara\u00e7lar\u0131n baz\u0131 k\u0131s\u0131tlamalar\u0131 modern geli\u015ftirme s\u00fcre\u00e7lerinde zorluklara yol a\u00e7abilmektedir. \u0130\u015fte tam bu noktada Poetry gibi modern ba\u011f\u0131ml\u0131l\u0131k y\u00f6neticileri devreye girer.<\/p>\n<p>Bu kapsaml\u0131 makalede, Ubuntu 22.04 i\u015fletim sistemi \u00fczerinde Poetry&#8217;nin nas\u0131l kurulaca\u011f\u0131n\u0131 ve Python projelerinizde ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00f6netmek i\u00e7in nas\u0131l kullan\u0131laca\u011f\u0131n\u0131 ayr\u0131nt\u0131l\u0131 olarak inceleyece\u011fiz. Poetry&#8217;nin sa\u011flad\u0131\u011f\u0131 avantajlar\u0131, temel komutlar\u0131n\u0131 ve ileri d\u00fczey \u00f6zelliklerini ele alarak, Python geli\u015ftirme deneyiminizi nas\u0131l daha verimli hale getirebilece\u011finizi g\u00f6sterece\u011fiz.<\/p>\n<h3>Neden Poetry? Geleneksel Y\u00f6ntemlere Kar\u015f\u0131 Avantajlar\u0131<\/h3>\n<p>Python&#8217;da ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi denince akla ilk gelen ara\u00e7lar <code>pip<\/code> ve <code>venv<\/code>&#8216;dir. <code>pip<\/code>, Python paketlerini kurmak ve kald\u0131rmak i\u00e7in standart ara\u00e7ken, <code>venv<\/code> veya <code>virtualenv<\/code> ise her proje i\u00e7in izole edilmi\u015f Python ortamlar\u0131 olu\u015fturmaya yarar. Bu ara\u00e7lar birlikte kullan\u0131ld\u0131\u011f\u0131nda, <code>requirements.txt<\/code> dosyas\u0131 arac\u0131l\u0131\u011f\u0131yla projenin ba\u011f\u0131ml\u0131l\u0131klar\u0131 listelenir. Ancak bu yakla\u015f\u0131m\u0131n baz\u0131 eksiklikleri vard\u0131r:<\/p>\n<p>1.  <strong>Tutars\u0131z Ba\u011f\u0131ml\u0131l\u0131k \u00c7\u00f6z\u00fcm\u00fc:<\/strong> <code>requirements.txt<\/code> dosyas\u0131 genellikle yaln\u0131zca do\u011frudan ba\u011f\u0131ml\u0131l\u0131klar\u0131 listeler ve bu ba\u011f\u0131ml\u0131l\u0131klar\u0131n alt ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131n kesin versiyonlar\u0131n\u0131 kilitlemez. Bu durum, farkl\u0131 zamanlarda veya farkl\u0131 makinelerde <code>pip install -r requirements.txt<\/code> \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda, alt ba\u011f\u0131ml\u0131l\u0131klar\u0131n farkl\u0131 versiyonlar\u0131n\u0131n kurulmas\u0131na ve dolay\u0131s\u0131yla projenin tutars\u0131z \u00e7al\u0131\u015fmas\u0131na neden olabilir.<br \/>\n2.  <strong>Lock Dosyas\u0131 Eksikli\u011fi:<\/strong> <code>requirements.txt<\/code> bir &#8220;lock&#8221; dosyas\u0131 de\u011fildir. Yani, bir projenin t\u00fcm ba\u011f\u0131ml\u0131l\u0131k a\u011fac\u0131n\u0131n (do\u011frudan ve dolayl\u0131 t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar) kesin versiyonlar\u0131n\u0131 kaydetmez. Bu, projenin tam olarak tekrarlanabilirli\u011fini zorla\u015ft\u0131r\u0131r.<br \/>\n3.  <strong>Geli\u015ftirici Deneyimi:<\/strong> <code>pip<\/code> ve <code>venv<\/code>&#8216;nin kullan\u0131m\u0131 nispeten basittir, ancak sanal ortam olu\u015fturma, etkinle\u015ftirme, paket kurma ve <code>requirements.txt<\/code> dosyas\u0131n\u0131 manuel olarak g\u00fcncelleme gibi ad\u0131mlar geli\u015ftirme s\u00fcrecini yava\u015flatabilir.<br \/>\n4.  <strong>Paketleme Zorluklar\u0131:<\/strong> Python projelerini da\u011f\u0131t\u0131labilir paketler (\u00f6rne\u011fin PyPI&#8217;ya y\u00fcklenecek k\u00fct\u00fcphaneler) haline getirmek, <code>setup.py<\/code> veya <code>setup.cfg<\/code> gibi dosyalarla ek yap\u0131land\u0131rma gerektirir ve karma\u015f\u0131k olabilir.<\/p>\n<p>Poetry, bu sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in tasarlanm\u0131\u015f modern bir Python ba\u011f\u0131ml\u0131l\u0131k y\u00f6neticisi ve paketleme arac\u0131d\u0131r. Temel avantajlar\u0131 \u015funlard\u0131r:<\/p>\n<p>*   <strong>Tutarl\u0131 ve Tekrarlanabilir Ortamlar:<\/strong> Poetry, <code>pyproject.toml<\/code> dosyas\u0131nda projenin t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 (do\u011frudan ve dolayl\u0131) tan\u0131mlar ve <code>poetry.lock<\/code> dosyas\u0131 ile bu ba\u011f\u0131ml\u0131l\u0131klar\u0131n kesin versiyonlar\u0131n\u0131 kilitler. Bu, projenin her zaman ayn\u0131 ba\u011f\u0131ml\u0131l\u0131k setiyle kurulmas\u0131n\u0131 ve \u00e7al\u0131\u015fmas\u0131n\u0131 garanti eder.<br \/>\n*   <strong>Otomatik Sanal Ortam Y\u00f6netimi:<\/strong> Poetry, proje i\u00e7in otomatik olarak bir sanal ortam olu\u015fturur ve y\u00f6netir. Geli\u015ftiricinin manuel olarak <code>venv<\/code> olu\u015fturup etkinle\u015ftirmesine gerek kalmaz.<br \/>\n*   <strong>Geli\u015ftirilmi\u015f Ba\u011f\u0131ml\u0131l\u0131k \u00c7\u00f6z\u00fcm\u00fc:<\/strong> Geli\u015fmi\u015f bir \u00e7\u00f6z\u00fcc\u00fc kullanarak ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 daha etkili bir \u015fekilde y\u00f6netir.<br \/>\n*   <strong>Kolay Paketleme ve Yay\u0131nlama:<\/strong> <code>pyproject.toml<\/code> dosyas\u0131, projenin metadata&#8217;s\u0131n\u0131 (ad\u0131, versiyonu, yazar bilgileri vb.) i\u00e7erir ve bu bilgileri kullanarak projenin kolayca paketlenmesini (<code>sdist<\/code>, <code>wheel<\/code>) ve PyPI gibi depolara yay\u0131nlanmas\u0131n\u0131 sa\u011flar.<br \/>\n*   <strong>Kullan\u0131c\u0131 Dostu CLI:<\/strong> Sezgisel komut sat\u0131r\u0131 aray\u00fcz\u00fc (CLI) sayesinde ba\u011f\u0131ml\u0131l\u0131k ekleme, kald\u0131rma, g\u00fcncelleme ve komut \u00e7al\u0131\u015ft\u0131rma gibi i\u015flemler \u00e7ok daha basittir.<\/p>\n<p>K\u0131sacas\u0131, Poetry, Python projeleri i\u00e7in modern, tutarl\u0131 ve geli\u015ftirici dostu bir ba\u011f\u0131ml\u0131l\u0131k y\u00f6netim ve paketleme \u00e7\u00f6z\u00fcm\u00fc sunar.<\/p>\n<h3>\u00d6n Gereksinimler<\/h3>\n<p>Poetry kurulumuna ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n gereksinimlerin kar\u015f\u0131land\u0131\u011f\u0131ndan emin olunuz:<\/p>\n<p>*   <strong>Ubuntu 22.04 LTS:<\/strong> Bu makaledeki ad\u0131mlar Ubuntu 22.04 (Jammy Jellyfish) i\u00e7in \u00f6zel olarak test edilmi\u015ftir.<br \/>\n*   <strong>Python 3:<\/strong> Ubuntu 22.04 varsay\u0131lan olarak Python 3.10 ile gelir. Poetry&#8217;nin \u00e7al\u0131\u015fmas\u0131 i\u00e7in Python 3 kurulu olmal\u0131d\u0131r. Terminalde <code>python3 --version<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak Python s\u00fcr\u00fcm\u00fcn\u00fcz\u00fc kontrol edebilirsiniz. E\u011fer kurulu de\u011filse veya farkl\u0131 bir Python s\u00fcr\u00fcm\u00fcne ihtiyac\u0131n\u0131z varsa, a\u015fa\u011f\u0131daki komutlarla kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt install python3 python3-pip<\/code><\/pre>\n<p>*   <strong>Temel Terminal Bilgisi:<\/strong> Komut sat\u0131r\u0131 aray\u00fcz\u00fcn\u00fc (terminal) kullanmaya a\u015fina olman\u0131z gerekmektedir.<\/p>\n<h3>Poetry Kurulum Y\u00f6ntemleri<\/h3>\n<p>Poetry&#8217;yi Ubuntu 22.04&#8217;e kurman\u0131n birka\u00e7 yolu vard\u0131r. En \u00e7ok \u00f6nerilen ve genellikle en sorunsuz olan y\u00f6ntem, Poetry&#8217;nin kendi resmi kurulum beti\u011fini kullanmakt\u0131r. Alternatif olarak <code>pipx<\/code> veya <code>pip<\/code> ile de kurulum yap\u0131labilir, ancak her bir y\u00f6ntemin kendine g\u00f6re avantajlar\u0131 ve dezavantajlar\u0131 bulunmaktad\u0131r.<\/p>\n<h4>Resmi Poetry Kurulum Beti\u011fi (\u00d6nerilen Y\u00f6ntem)<\/h4>\n<p>Bu y\u00f6ntem, Poetry&#8217;nin en g\u00fcncel ve kararl\u0131 s\u00fcr\u00fcm\u00fcn\u00fc sisteminizdeki di\u011fer Python paketlerinden izole bir \u015fekilde kurar. Bu, potansiyel ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nler ve Poetry&#8217;nin kendi kendini y\u00f6netmesini sa\u011flar.<\/p>\n<p>1.  <strong>Kurulum Beti\u011fini \u00c7al\u0131\u015ft\u0131rma:<\/strong><br \/>\n    Terminalinizi a\u00e7\u0131n ve a\u015fa\u011f\u0131daki <code>curl<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n. Bu komut, Poetry&#8217;nin kurulum beti\u011fini indirir ve <code>python3<\/code> ile \u00e7al\u0131\u015ft\u0131r\u0131r:<\/p>\n<pre><code class=\"language-bash\">curl -sSL https:\/\/install.python-poetry.org | python3 -<\/code><\/pre>\n<p>    Bu komut, Poetry&#8217;yi <code>~\/.local\/bin<\/code> dizinine ve ilgili ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 <code>~\/.cache\/pypoetry<\/code> alt\u0131na kuracakt\u0131r. Kurulum tamamland\u0131\u011f\u0131nda, terminalde bir ba\u015far\u0131 mesaj\u0131 g\u00f6receksiniz.<\/p>\n<p>2.  <strong>PATH De\u011fi\u015fkenine Ekleme:<\/strong><br \/>\n    Kurulum beti\u011fi Poetry y\u00fcr\u00fct\u00fclebilir dosyas\u0131n\u0131 <code>~\/.local\/bin<\/code> dizinine yerle\u015ftirir. Bu dizinin sisteminizin <code>PATH<\/code> de\u011fi\u015fkeninde olmas\u0131 gerekir, b\u00f6ylece Poetry komutunu herhangi bir yerden \u00e7al\u0131\u015ft\u0131rabilirsiniz. Genellikle kurulum beti\u011fi bu ad\u0131m\u0131 otomatik olarak \u00f6nerir veya yapar. E\u011fer Poetry komutu bulunamazsa, a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 uygulayarak <code>PATH<\/code> de\u011fi\u015fkeninizi g\u00fcncelleyin:<\/p>\n<p>    *   <strong>Bash Kullan\u0131c\u0131lar\u0131 \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">echo 'export PATH=\"$HOME\/.local\/bin:$PATH\"' >> ~\/.bashrc\n        source ~\/.bashrc<\/code><\/pre>\n<p>    *   <strong>Zsh Kullan\u0131c\u0131lar\u0131 \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">echo 'export PATH=\"$HOME\/.local\/bin:$PATH\"' >> ~\/.zshrc\n        source ~\/.zshrc<\/code><\/pre>\n<p>    Bu komutlar, Poetry&#8217;nin yolunu kal\u0131c\u0131 olarak kabuk yap\u0131land\u0131rma dosyan\u0131za ekler ve ard\u0131ndan bu dosyay\u0131 yeniden y\u00fckleyerek de\u011fi\u015fiklikleri uygular.<\/p>\n<p>3.  <strong>Kurulumu Do\u011frulama:<\/strong><br \/>\n    \u015eimdi Poetry&#8217;nin do\u011fru bir \u015fekilde kurulup kurulmad\u0131\u011f\u0131n\u0131 kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">poetry --version<\/code><\/pre>\n<p>    Bu komut, kurulu Poetry s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir (\u00f6rn: <code>Poetry (version 1.8.2)<\/code>).<\/p>\n<p>4.  <strong>Poetry&#8217;yi G\u00fcncelleme:<\/strong><br \/>\n    Poetry&#8217;nin kendisini g\u00fcncellemek i\u00e7in basit bir komut kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">poetry self update<\/code><\/pre>\n<p>5.  <strong>Poetry&#8217;yi Kald\u0131rma:<\/strong><br \/>\n    E\u011fer Poetry&#8217;yi bu y\u00f6ntemle kurduysan\u0131z, kald\u0131rmak da olduk\u00e7a basittir:<\/p>\n<pre><code class=\"language-bash\">poetry self drop<\/code><\/pre>\n<p>    Bu komut, Poetry&#8217;nin kurulu oldu\u011fu dizinleri temizleyecektir. <code>PATH<\/code> de\u011fi\u015fkenindeki giri\u015fi manuel olarak kald\u0131rman\u0131z gerekebilir.<\/p>\n<h4>pipx ile Kurulum (Alternatif Y\u00f6ntem)<\/h4>\n<p><code>pipx<\/code>, Python uygulamalar\u0131n\u0131 izole edilmi\u015f sanal ortamlara kurmak ve \u00e7al\u0131\u015ft\u0131rmak i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015f bir ara\u00e7t\u0131r. Poetry gibi CLI tabanl\u0131 Python ara\u00e7lar\u0131n\u0131 y\u00f6netmek i\u00e7in m\u00fckemmel bir se\u00e7imdir.<\/p>\n<p>1.  <strong>pipx Kurulumu:<\/strong><br \/>\n    \u00d6ncelikle <code>pipx<\/code>&#8216;i sisteminize kurman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt install pipx<\/code><\/pre>\n<p>    Kurulumdan sonra <code>pipx<\/code>&#8216;in <code>PATH<\/code> de\u011fi\u015fkeninizde oldu\u011fundan emin olmak i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">pipx ensurepath<\/code><\/pre>\n<p>    Bu komut, <code>~\/.local\/bin<\/code> dizinini <code>PATH<\/code> de\u011fi\u015fkeninize ekleyecektir. Kabuk oturumunuzu yeniden ba\u015flatman\u0131z gerekebilir (<code>source ~\/.bashrc<\/code> veya <code>source ~\/.zshrc<\/code>).<\/p>\n<p>2.  <strong>Poetry&#8217;yi pipx ile Kurma:<\/strong><br \/>\n    \u015eimdi <code>pipx<\/code> kullanarak Poetry&#8217;yi kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">pipx install poetry<\/code><\/pre>\n<p>    <code>pipx<\/code>, Poetry i\u00e7in ayr\u0131 bir sanal ortam olu\u015fturacak ve onu bu ortama kuracakt\u0131r.<\/p>\n<p>3.  <strong>Kurulumu Do\u011frulama:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry --version<\/code><\/pre>\n<p>4.  <strong>Poetry&#8217;yi G\u00fcncelleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">pipx upgrade poetry<\/code><\/pre>\n<p>5.  <strong>Poetry&#8217;yi Kald\u0131rma:<\/strong><\/p>\n<pre><code class=\"language-bash\">pipx uninstall poetry<\/code><\/pre>\n<p><code>pipx<\/code> ile kurulum, Poetry&#8217;yi sistem Python&#8217;\u0131ndan tamamen izole tuttu\u011fu i\u00e7in olduk\u00e7a temiz ve y\u00f6netilebilir bir y\u00f6ntemdir.<\/p>\n<h4>pip ile Kurulum (\u00d6nerilmeyen Y\u00f6ntem)<\/h4>\n<p>Teorik olarak Poetry&#8217;yi <code>pip<\/code> ile de kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">pip install poetry<\/code><\/pre>\n<p>Ancak bu y\u00f6ntem <strong>\u00f6nerilmez<\/strong>. <code>pip<\/code> ile kurdu\u011funuzda Poetry, sistem Python ortam\u0131na veya o anda etkin olan sanal ortama kurulur. Bu durum, Poetry&#8217;nin kendi ba\u011f\u0131ml\u0131l\u0131klar\u0131 ile sisteminizdeki veya projenizdeki di\u011fer paketler aras\u0131nda \u00e7ak\u0131\u015fmalara yol a\u00e7abilir. Ayr\u0131ca, Poetry&#8217;nin kendisini <code>pip<\/code> ile y\u00f6netmek, kendi ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 y\u00f6netmek i\u00e7in tasarlanm\u0131\u015f bir arac\u0131 kullanmakla \u00e7eli\u015fir ve karma\u015f\u0131kl\u0131\u011fa yol a\u00e7abilir. Bu nedenle, yukar\u0131da belirtilen iki y\u00f6ntemden birini tercih etmeniz \u015fiddetle tavsiye edilir.<\/p>\n<h3>Poetry ile Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netme<\/h3>\n<p>Poetry ba\u015far\u0131yla kurulduktan sonra, projelerinizde ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00f6netmeye ba\u015flayabilirsiniz. \u0130\u015fte temel Poetry i\u015f ak\u0131\u015f\u0131:<\/p>\n<h4>Yeni Bir Poetry Projesi Olu\u015fturma<\/h4>\n<p>Yeni bir Python projesi ba\u015flatmak i\u00e7in Poetry&#8217;nin <code>new<\/code> komutunu kullanabilirsiniz. Bu komut, standart bir proje yap\u0131s\u0131 olu\u015fturur ve <code>pyproject.toml<\/code> dosyas\u0131n\u0131 haz\u0131rlar.<\/p>\n<pre><code class=\"language-bash\">poetry new my-awesome-project\ncd my-awesome-project<\/code><\/pre>\n<p>Bu komut a\u015fa\u011f\u0131daki gibi bir dizin yap\u0131s\u0131 olu\u015fturacakt\u0131r:<\/p>\n<pre><code class=\"language-\">my-awesome-project\/\n\u251c\u2500\u2500 pyproject.toml\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 my_awesome_project\/  # Projenizin ana paketi\n\u2502   \u2514\u2500\u2500 __init__.py\n\u2514\u2500\u2500 tests\/\n    \u2514\u2500\u2500 __init__.py\n    \u2514\u2500\u2500 test_my_awesome_project.py<\/code><\/pre>\n<h4>Mevcut Bir Projeyi Poetry ile Ba\u015flatma<\/h4>\n<p>E\u011fer mevcut bir Python projeniz varsa ve onu Poetry ile y\u00f6netmeye ba\u015flamak istiyorsan\u0131z, projenizin k\u00f6k dizininde <code>poetry init<\/code> komutunu kullanabilirsiniz. Bu komut, interaktif bir \u015fekilde proje hakk\u0131nda bilgi ister ve <code>pyproject.toml<\/code> dosyas\u0131n\u0131 olu\u015fturur.<\/p>\n<pre><code class=\"language-bash\">cd \/path\/to\/my-existing-project\npoetry init<\/code><\/pre>\n<p>Poetry size a\u015fa\u011f\u0131daki gibi sorular soracakt\u0131r:<br \/>\n*   <code>Package name [my-existing-project]:<\/code><br \/>\n*   <code>Version [0.1.0]:<\/code><br \/>\n*   <code>Description []:<\/code><br \/>\n*   <code>Author [Your Name <your.email@example.com>]:<\/code><br \/>\n*   <code>License []:<\/code><br \/>\n*   <code>Compatible Python versions [^3.10]:<\/code> (Burada projenizin destekledi\u011fi Python versiyonlar\u0131n\u0131 belirtirsiniz. <code>^3.10<\/code> Python 3.10 ve \u00fczeri 3.x versiyonlar\u0131n\u0131 ifade eder, ancak 4.0&#8217;\u0131 kapsamaz.)<br \/>\n*   Daha sonra ba\u011f\u0131ml\u0131l\u0131k eklemek isteyip istemedi\u011finizi sorar.<\/p>\n<p>Yan\u0131tlar\u0131 tamamlad\u0131ktan sonra, projenizin k\u00f6k dizininde bir <code>pyproject.toml<\/code> dosyas\u0131 olu\u015fturulacakt\u0131r.<\/p>\n<h4>pyproject.toml Dosyas\u0131: Projenizin Kalbi<\/h4>\n<p><code>pyproject.toml<\/code>, Poetry projenizin t\u00fcm meta verilerini ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 tan\u0131mlayan ana yap\u0131land\u0131rma dosyas\u0131d\u0131r. TOML (Tom&#8217;s Obvious, Minimal Language) format\u0131nda yaz\u0131lm\u0131\u015ft\u0131r. \u0130\u015fte temel b\u00f6l\u00fcmleri ve \u00f6rnek bir i\u00e7eri\u011fi:<\/p>\n<pre><code class=\"language-toml\">[tool.poetry]\nname = \"my-awesome-project\"\nversion = \"0.1.0\"\ndescription = \"A short description of my project.\"\nauthors = [\"Your Name <your.email@example.com>\"]\nlicense = \"MIT\"\nreadme = \"README.md\"\npackages = [{include = \"my_awesome_project\"}] # Ana paketinizin dizinini belirtir\n\n[tool.poetry.dependencies]\npython = \"^3.10\" # Projenin uyumlu oldu\u011fu Python versiyonlar\u0131\nrequests = \"^2.28.1\" # \u00dcretim ba\u011f\u0131ml\u0131l\u0131\u011f\u0131\nfastapi = {version = \"^0.100.0\", optional = true} # Opsiyonel ba\u011f\u0131ml\u0131l\u0131k\n\n[tool.poetry.group.dev.dependencies] # Geli\u015ftirme ba\u011f\u0131ml\u0131l\u0131klar\u0131 grubu\npytest = \"^7.4.0\"\nblack = \"^23.7.0\"\n\n[tool.poetry.group.docs.dependencies] # Belgeleme ba\u011f\u0131ml\u0131l\u0131klar\u0131 grubu\nsphinx = \"^7.0.0\"\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"<\/code><\/pre>\n<p>*   <strong><code>[tool.poetry]<\/code><\/strong>: Projenin ad\u0131, versiyonu, a\u00e7\u0131klamas\u0131, yazarlar\u0131 ve lisans\u0131 gibi temel meta verilerini i\u00e7erir.<br \/>\n*   <strong><code>[tool.poetry.dependencies]<\/code><\/strong>: Projenin \u00fcretim ortam\u0131nda ihtiya\u00e7 duydu\u011fu ba\u011f\u0131ml\u0131l\u0131klar\u0131 listeler. <code>python = \"^3.10\"<\/code> ifadesi, projenin Python 3.10 ve \u00fczeri (ancak 4.0&#8217;dan k\u00fc\u00e7\u00fck) s\u00fcr\u00fcmleriyle uyumlu oldu\u011funu belirtir.<br \/>\n*   <strong><code>[tool.poetry.group.<group_name>.dependencies]<\/code><\/strong>: Geli\u015ftirme, test veya belgeleme gibi belirli ama\u00e7lar i\u00e7in ba\u011f\u0131ml\u0131l\u0131k gruplar\u0131 tan\u0131mlaman\u0131z\u0131 sa\u011flar. Bu gruplar varsay\u0131lan olarak kurulmaz, ancak <code>poetry install --with <group_name><\/code> komutuyla kurulabilir.<br \/>\n*   <strong><code>[build-system]<\/code><\/strong>: Bu b\u00f6l\u00fcm Poetry taraf\u0131ndan otomatik olarak y\u00f6netilir ve projenin nas\u0131l in\u015fa edilece\u011fini belirtir. Genellikle elle d\u00fczenlenmez.<\/p>\n<h4>Ba\u011f\u0131ml\u0131l\u0131k Ekleme<\/h4>\n<p>Poetry ile ba\u011f\u0131ml\u0131l\u0131k eklemek \u00e7ok kolayd\u0131r. <code>poetry add<\/code> komutu, <code>pyproject.toml<\/code> dosyas\u0131n\u0131 g\u00fcnceller, ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 \u00e7\u00f6zer, <code>poetry.lock<\/code> dosyas\u0131n\u0131 olu\u015fturur\/g\u00fcnceller ve ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 sanal ortama kurar.<\/p>\n<p>*   <strong>\u00dcretim Ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 Ekleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry add requests<\/code><\/pre>\n<p>    Bu komut, <code>requests<\/code> k\u00fct\u00fcphanesinin en uygun s\u00fcr\u00fcm\u00fcn\u00fc bulur ve <code>[tool.poetry.dependencies]<\/code> alt\u0131na ekler.<\/p>\n<p>*   <strong>Belirli Bir S\u00fcr\u00fcm\u00fc Ekleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry add beautifulsoup4@^4.12.2 # 4.12.2 ve \u00fczeri, 5.0.0'dan k\u00fc\u00e7\u00fck\n    poetry add pandas@~2.0.3       # 2.0.3 ve \u00fczeri, 2.1.0'dan k\u00fc\u00e7\u00fck\n    poetry add numpy==1.25.0       # Tam olarak 1.25.0<\/code><\/pre>\n<p>    Poetry, s\u00fcr\u00fcm k\u0131s\u0131tlamalar\u0131 i\u00e7in PEP 440&#8217;\u0131 destekler. <code>^<\/code> (caret), <code>~<\/code> (tilde), <code>==<\/code> (e\u015fit) gibi operat\u00f6rleri kullanabilirsiniz.<\/p>\n<p>*   <strong>Geli\u015ftirme Ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 Ekleme:<\/strong><br \/>\n    Geli\u015ftirme, test veya belgeleme gibi sadece geli\u015ftirme s\u00fcrecinde ihtiya\u00e7 duyulan ba\u011f\u0131ml\u0131l\u0131klar\u0131 ayr\u0131 bir gruba eklemek en iyi uygulamad\u0131r.<\/p>\n<pre><code class=\"language-bash\">poetry add pytest --group dev\n    poetry add black --group dev<\/code><\/pre>\n<p>    Bu komutlar, <code>pytest<\/code> ve <code>black<\/code>&#8216;i <code>[tool.poetry.group.dev.dependencies]<\/code> alt\u0131na ekleyecektir.<\/p>\n<p>*   <strong>Opsiyonel Ba\u011f\u0131ml\u0131l\u0131k Ekleme:<\/strong><br \/>\n    Baz\u0131 ba\u011f\u0131ml\u0131l\u0131klar projenin t\u00fcm kullan\u0131c\u0131lar\u0131 i\u00e7in gerekli olmayabilir. \u00d6rne\u011fin, farkl\u0131 veritaban\u0131 s\u00fcr\u00fcc\u00fcleri gibi.<\/p>\n<pre><code class=\"language-bash\">poetry add psycopg2-binary --optional<\/code><\/pre>\n<p>    Bu ba\u011f\u0131ml\u0131l\u0131k <code>pyproject.toml<\/code> i\u00e7inde <code>optional = true<\/code> olarak i\u015faretlenir ve <code>poetry install<\/code> komutuyla varsay\u0131lan olarak kurulmaz. Yaln\u0131zca <code>poetry install --with psycopg2-binary<\/code> gibi komutlarla kurulabilir.<\/p>\n<h4>Ba\u011f\u0131ml\u0131l\u0131klar\u0131 Kurma<\/h4>\n<p><code>poetry install<\/code> komutu, <code>poetry.lock<\/code> dosyas\u0131nda belirtilen t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131 (veya yoksa <code>pyproject.toml<\/code>&#8216;a g\u00f6re \u00e7\u00f6zer) sanal ortama kurar. Bu, projenin ayn\u0131 ba\u011f\u0131ml\u0131l\u0131k setiyle tekrarlanabilir bir \u015fekilde kurulmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>*   <strong>T\u00fcm Ba\u011f\u0131ml\u0131l\u0131klar\u0131 Kurma:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry install<\/code><\/pre>\n<p>    Bu komut, \u00fcretim ve varsay\u0131lan geli\u015ftirme ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 kurar.<\/p>\n<p>*   <strong>Sadece \u00dcretim Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Kurma:<\/strong><br \/>\n    E\u011fer bir \u00fcretim ortam\u0131nda sadece temel ba\u011f\u0131ml\u0131l\u0131klar\u0131 kurmak istiyorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">poetry install --no-dev<\/code><\/pre>\n<p>*   <strong>Belirli Gruplar\u0131 Kurma:<\/strong><br \/>\n    \u00d6rne\u011fin, sadece test ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 kurmak istiyorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">poetry install --with dev --with docs<\/code><\/pre>\n<h4>Ba\u011f\u0131ml\u0131l\u0131klar\u0131 Kald\u0131rma<\/h4>\n<p>Bir ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 projenizden kald\u0131rmak i\u00e7in <code>poetry remove<\/code> komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">poetry remove requests\npoetry remove pytest --group dev<\/code><\/pre>\n<p>Bu komutlar <code>pyproject.toml<\/code> ve <code>poetry.lock<\/code> dosyalar\u0131n\u0131 g\u00fcnceller ve ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 sanal ortamdan kald\u0131r\u0131r.<\/p>\n<h4>Ba\u011f\u0131ml\u0131l\u0131klar\u0131 G\u00fcncelleme<\/h4>\n<p>Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131z\u0131 en son uyumlu s\u00fcr\u00fcmlerine g\u00fcncellemek i\u00e7in <code>poetry update<\/code> komutunu kullanabilirsiniz:<\/p>\n<p>*   <strong>T\u00fcm Ba\u011f\u0131ml\u0131l\u0131klar\u0131 G\u00fcncelleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry update<\/code><\/pre>\n<p>    Bu komut, <code>pyproject.toml<\/code>&#8216;daki k\u0131s\u0131tlamalara uygun olarak t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131 en yeni s\u00fcr\u00fcmlerine g\u00fcnceller ve <code>poetry.lock<\/code> dosyas\u0131n\u0131 buna g\u00f6re g\u00fcnceller.<\/p>\n<p>*   <strong>Belirli Bir Ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 G\u00fcncelleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry update requests<\/code><\/pre>\n<p>    Bu, yaln\u0131zca <code>requests<\/code> k\u00fct\u00fcphanesini ve onun alt ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 g\u00fcnceller.<\/p>\n<h4>Sanal Ortam Y\u00f6netimi ve Komut \u00c7al\u0131\u015ft\u0131rma<\/h4>\n<p>Poetry, sanal ortamlar\u0131 sizin i\u00e7in otomatik olarak y\u00f6netir. Projenizin ba\u011f\u0131ml\u0131l\u0131klar\u0131 i\u00e7in \u00f6zel bir sanal ortam olu\u015fturur ve bu ortamda \u00e7al\u0131\u015f\u0131r.<\/p>\n<p>*   <strong>Sanal Ortam\u0131n Konumu:<\/strong><br \/>\n    Varsay\u0131lan olarak Poetry, sanal ortamlar\u0131 <code>~\/.cache\/pypoetry\/virtualenvs<\/code> dizininde olu\u015fturur. Her projenin kendi benzersiz sanal ortam\u0131 vard\u0131r. E\u011fer sanal ortamlar\u0131n proje dizini i\u00e7inde (<code>.venv<\/code> klas\u00f6r\u00fc olarak) olu\u015fturulmas\u0131n\u0131 isterseniz, a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131rabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">poetry config virtualenvs.in-project true<\/code><\/pre>\n<p>    Bu ayar\u0131 yapt\u0131ktan sonra yeni bir proje olu\u015fturdu\u011funuzda veya <code>poetry install<\/code> \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda sanal ortam proje k\u00f6k dizininizde olu\u015fturulacakt\u0131r.<\/p>\n<p>*   <strong>Sanal Ortama Giri\u015f (Activate):<\/strong><br \/>\n    Projenizin sanal ortam\u0131na girmek i\u00e7in <code>poetry shell<\/code> komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">poetry shell<\/code><\/pre>\n<p>    Bu komut, kabu\u011funuzu sanal ortam\u0131 kullanacak \u015fekilde de\u011fi\u015ftirir. Art\u0131k <code>python<\/code> veya <code>pip<\/code> gibi komutlar\u0131 \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda projenizin sanal ortam\u0131ndaki versiyonlar\u0131 kullan\u0131lacakt\u0131r. Sanal ortamdan \u00e7\u0131kmak i\u00e7in <code>exit<\/code> yazman\u0131z yeterlidir.<\/p>\n<p>*   <strong>Komutlar\u0131 Sanal Ortamda \u00c7al\u0131\u015ft\u0131rma:<\/strong><br \/>\n    Sanal ortama girmeden do\u011frudan bir komutu projenizin sanal ortam\u0131nda \u00e7al\u0131\u015ft\u0131rmak i\u00e7in <code>poetry run<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">poetry run python my_script.py\n    poetry run pytest\n    poetry run black .<\/code><\/pre>\n<p>    Bu, komutu sanal ortam\u0131n i\u00e7indeymi\u015f gibi \u00e7al\u0131\u015ft\u0131r\u0131r ve i\u015fi bittikten sonra kabu\u011funuzu normal durumuna d\u00f6nd\u00fcr\u00fcr.<\/p>\n<p>*   <strong>Mevcut Sanal Ortamlar\u0131 Listeleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry env list<\/code><\/pre>\n<p>    Bu komut, Poetry&#8217;nin y\u00f6netti\u011fi t\u00fcm sanal ortamlar\u0131 listeler.<\/p>\n<p>*   <strong>Belirli Bir Python Versiyonunu Kullanma:<\/strong><br \/>\n    E\u011fer sisteminizde birden fazla Python versiyonu kuruluysa ve Poetry&#8217;nin projeniz i\u00e7in belirli bir versiyonu kullanmas\u0131n\u0131 istiyorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">poetry env use python3.11 # E\u011fer Python 3.11 kuruluysa\n    poetry env use \/usr\/bin\/python3.12 # Tam yolu belirterek<\/code><\/pre>\n<p>    Bu komut, projenizin <code>pyproject.toml<\/code> dosyas\u0131ndaki Python k\u0131s\u0131tlamalar\u0131yla uyumlu bir sanal ortam olu\u015fturur veya var olan\u0131 kullan\u0131r.<\/p>\n<p>*   <strong>Sanal Ortam\u0131 Kald\u0131rma:<\/strong><br \/>\n    Bir projenin sanal ortam\u0131n\u0131 tamamen kald\u0131rmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">poetry env remove python3.10 # veya kulland\u0131\u011f\u0131n\u0131z Python versiyonu\n    # veya\n    poetry env remove <env_name> # <code>poetry env list<\/code> ile g\u00f6r\u00fcnen isim<\/code><\/pre>\n<h3>Python Versiyonlar\u0131n\u0131 Poetry ile Y\u00f6netme<\/h3>\n<p>Ubuntu 22.04, varsay\u0131lan olarak Python 3.10 ile gelir. Ancak farkl\u0131 projeler farkl\u0131 Python versiyonlar\u0131na ihtiya\u00e7 duyabilir. Poetry, bu durumu y\u00f6netmenize yard\u0131mc\u0131 olur.<\/p>\n<p>*   <strong>Farkl\u0131 Python Versiyonlar\u0131 Kurma (Ubuntu&#8217;da):<\/strong><br \/>\n    Birden fazla Python versiyonuna ihtiyac\u0131n\u0131z varsa, <code>deadsnakes<\/code> PPA&#8217;s\u0131n\u0131 kullanarak bunlar\u0131 Ubuntu&#8217;ya kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo add-apt-repository ppa:deadsnakes\/ppa\n    sudo apt update\n    sudo apt install python3.11 python3.12<\/code><\/pre>\n<p>    Bu komutlar Python 3.11 ve 3.12&#8217;yi sisteminize kuracakt\u0131r.<\/p>\n<p>*   <strong>pyenv ile Python Versiyonlar\u0131n\u0131 Y\u00f6netme (Daha Esnek):<\/strong><br \/>\n    <code>pyenv<\/code>, birden fazla Python versiyonunu kolayca kurup y\u00f6netmenizi sa\u011flayan pop\u00fcler bir ara\u00e7t\u0131r. E\u011fer \u00e7ok say\u0131da Python versiyonuyla \u00e7al\u0131\u015f\u0131yorsan\u0131z veya geli\u015ftirme ortam\u0131n\u0131zda daha fazla esnekli\u011fe ihtiyac\u0131n\u0131z varsa <code>pyenv<\/code> kullanmay\u0131 d\u00fc\u015f\u00fcnebilirsiniz. <code>pyenv<\/code>&#8216;i kurduktan sonra:<\/p>\n<pre><code class=\"language-bash\">pyenv install 3.11.0\n    pyenv local 3.11.0 # Proje dizini i\u00e7in 3.11.0'\u0131 ayarlar<\/code><\/pre>\n<p>    Ard\u0131ndan Poetry, <code>pyenv<\/code> taraf\u0131ndan sa\u011flanan Python versiyonlar\u0131n\u0131 otomatik olarak alg\u0131layabilir ve kullanabilir.<\/p>\n<p>*   <strong>Poetry&#8217;ye Belirli Bir Python Versiyonunu S\u00f6yleme:<\/strong><br \/>\n    <code>pyproject.toml<\/code> dosyan\u0131zda <code>python = \"^3.11\"<\/code> gibi bir k\u0131s\u0131tlama belirtirseniz, Poetry bu k\u0131s\u0131tlamaya uyan bir Python yorumlay\u0131c\u0131s\u0131 bulmaya \u00e7al\u0131\u015facakt\u0131r. E\u011fer sisteminizde birden fazla uyumlu Python versiyonu varsa ve Poetry&#8217;nin belirli birini kullanmas\u0131n\u0131 istiyorsan\u0131z, daha \u00f6nce bahsedildi\u011fi gibi <code>poetry env use python3.11<\/code> komutunu kullanabilirsiniz.<\/p>\n<h3>Geli\u015fmi\u015f Konular<\/h3>\n<p>Poetry&#8217;nin sundu\u011fu baz\u0131 geli\u015fmi\u015f \u00f6zellikler, daha karma\u015f\u0131k projelerde veya \u00f6zel durumlarda olduk\u00e7a faydal\u0131 olabilir.<\/p>\n<h4>Ba\u011f\u0131ml\u0131l\u0131k Gruplar\u0131 (Dependency Groups)<\/h4>\n<p>Daha \u00f6nce de bahsetti\u011fimiz gibi, Poetry ba\u011f\u0131ml\u0131l\u0131klar\u0131 gruplara ay\u0131rman\u0131za olanak tan\u0131r. Bu, projenizin farkl\u0131 a\u015famalar\u0131 veya farkl\u0131 \u00f6zellikleri i\u00e7in gerekli olan ba\u011f\u0131ml\u0131l\u0131klar\u0131 d\u00fczenlemenin temiz bir yoludur.<\/p>\n<pre><code class=\"language-toml\">[tool.poetry.group.test.dependencies]\npytest = \"^7.4.0\"\npytest-cov = \"^4.1.0\"\n\n[tool.poetry.group.lint.dependencies]\nflake8 = \"^6.1.0\"\nmypy = \"^1.5.1\"<\/code><\/pre>\n<p>Bu gruplar\u0131 kurmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">poetry install --with test --with lint<\/code><\/pre>\n<p>Veya sadece bir grubu:<\/p>\n<pre><code class=\"language-bash\">poetry install --with lint<\/code><\/pre>\n<h4>Paket Yay\u0131nlama (Publishing Packages)<\/h4>\n<p>Poetry, Python k\u00fct\u00fcphanelerinizi veya uygulamalar\u0131n\u0131z\u0131 PyPI&#8217;ya (Python Package Index) veya \u00f6zel bir depoya yay\u0131nlamay\u0131 basitle\u015ftirir.<\/p>\n<p>1.  <strong>Da\u011f\u0131t\u0131m Paketleri Olu\u015fturma:<\/strong><br \/>\n    \u00d6ncelikle projenizin da\u011f\u0131t\u0131m paketlerini (kaynak da\u011f\u0131t\u0131m\u0131 <code>sdist<\/code> ve tekerlek <code>wheel<\/code>) olu\u015fturman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">poetry build<\/code><\/pre>\n<p>    Bu komut, <code>dist\/<\/code> dizini alt\u0131nda <code>.tar.gz<\/code> ve <code>.whl<\/code> uzant\u0131l\u0131 dosyalar olu\u015fturacakt\u0131r.<\/p>\n<p>2.  <strong>Paketi Yay\u0131nlama:<\/strong><br \/>\n    Paketinizi PyPI&#8217;ya (veya test PyPI&#8217;ya) yay\u0131nlamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">poetry publish\n    # Test PyPI'ya yay\u0131nlamak i\u00e7in:\n    # poetry publish -r testpypi<\/code><\/pre>\n<p>    \u0130lk kez yay\u0131nl\u0131yorsan\u0131z, Poetry sizden PyPI kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve \u015fifrenizi isteyecektir. G\u00fcvenlik i\u00e7in API tokenlar\u0131 kullanmak daha iyidir. API token&#8217;\u0131n\u0131z\u0131 yap\u0131land\u0131rmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">poetry config pypi-token.pypi <your_pypi_api_token><\/code><\/pre>\n<h4>Poetry Eklentileri (Plugins)<\/h4>\n<p>Poetry, i\u015flevselli\u011fini geni\u015fletmek i\u00e7in eklentileri destekler. \u00d6rne\u011fin, <code>requirements.txt<\/code> dosyas\u0131 olu\u015fturman\u0131z gereken durumlar i\u00e7in bir eklenti mevcuttur.<\/p>\n<p>1.  <strong>Eklenti Kurulumu:<\/strong><\/p>\n<pre><code class=\"language-bash\">poetry self add poetry-plugin-export<\/code><\/pre>\n<p>    Bu komut, <code>poetry-plugin-export<\/code> eklentisini Poetry&#8217;nin kendi sanal ortam\u0131na kurar.<\/p>\n<p>2.  <strong><code>requirements.txt<\/code> D\u0131\u015fa Aktarma:<\/strong><br \/>\n    Eklentiyi kurduktan sonra, projenizin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 <code>requirements.txt<\/code> format\u0131na d\u0131\u015fa aktarabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">poetry export -f requirements.txt --output requirements.txt --without-hashes<\/code><\/pre>\n<p>    Bu, <code>poetry.lock<\/code> dosyas\u0131ndaki ba\u011f\u0131ml\u0131l\u0131klara g\u00f6re bir <code>requirements.txt<\/code> dosyas\u0131 olu\u015fturur. <code>--without-hashes<\/code> se\u00e7ene\u011fi, hash de\u011ferlerini dahil etmez; bu, baz\u0131 durumlarda uyumluluk i\u00e7in gerekebilir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Poetry, Python projelerinde ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi ve paketleme s\u00fcre\u00e7lerini modernle\u015ftiren, geli\u015ftirici deneyimini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131ran g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Ubuntu 22.04 \u00fczerinde kurulumu ve kullan\u0131m\u0131 olduk\u00e7a basittir ve sa\u011flad\u0131\u011f\u0131 tutarl\u0131l\u0131k, otomatik sanal ortam y\u00f6netimi ve sezgisel komut sat\u0131r\u0131 aray\u00fcz\u00fc sayesinde Python geli\u015ftiricileri i\u00e7in vazge\u00e7ilmez bir yard\u0131mc\u0131 haline gelmi\u015ftir.<\/p>\n<p>Bu makalede, Poetry&#8217;nin neden \u00f6nemli oldu\u011funu, nas\u0131l kurulaca\u011f\u0131n\u0131 ve temel ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi i\u015flemlerini nas\u0131l ger\u00e7ekle\u015ftirece\u011finizi ayr\u0131nt\u0131l\u0131 olarak ele ald\u0131k. Ayr\u0131ca, farkl\u0131 Python versiyonlar\u0131n\u0131 y\u00f6netme ve baz\u0131 geli\u015fmi\u015f \u00f6zellikler hakk\u0131nda da bilgi verdik. Poetry&#8217;yi i\u015f ak\u0131\u015f\u0131n\u0131za entegre ederek, projelerinizin daha d\u00fczenli, tekrarlanabilir ve y\u00f6netilebilir olmas\u0131n\u0131 sa\u011flayabilir, b\u00f6ylece geli\u015ftirme s\u00fcrecinizi daha verimli hale getirebilirsiniz. Python projelerinizde ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131yla u\u011fra\u015fmak yerine, projenizin temel i\u015flevselli\u011fine odaklanmak i\u00e7in Poetry&#8217;nin sundu\u011fu kolayl\u0131klardan yararlanman\u0131z\u0131 \u015fiddetle tavsiye ederiz.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?\nPython, veri biliminden web geli\u015ftirmey","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-32696","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? Python, veri biliminden web geli\u015ftirmey\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-24T20:41:05+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?\",\"datePublished\":\"2025-10-24T20:41:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\"},\"wordCount\":2983,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\",\"name\":\"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-24T20:41:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?","og_description":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? Python, veri biliminden web geli\u015ftirmey","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-24T20:41:05+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?","datePublished":"2025-10-24T20:41:05+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/"},"wordCount":2983,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/","name":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-24T20:41:05+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerinde-python-bagimliliklarini-yonetmek-icin-poetry-nasil-kurulur-ve-kullanilir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 22.04 \u00dczerinde Python Ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 Y\u00f6netmek \u0130\u00e7in Poetry Nas\u0131l Kurulur ve Kullan\u0131l\u0131r?"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32696","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=32696"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32696\/revisions"}],"predecessor-version":[{"id":32697,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32696\/revisions\/32697"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=32696"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=32696"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=32696"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}