{"id":37911,"date":"2026-01-18T13:00:34","date_gmt":"2026-01-18T10:00:34","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/"},"modified":"2026-01-18T13:00:34","modified_gmt":"2026-01-18T10:00:34","slug":"git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/","title":{"rendered":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol"},"content":{"rendered":"<h2>Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol<\/h2>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, projelerinizi y\u00f6netmek, de\u011fi\u015fiklikleri takip etmek ve ekip arkada\u015flar\u0131n\u0131zla sorunsuz bir \u015fekilde i\u015fbirli\u011fi yapmak vazge\u00e7ilmezdir. \u0130\u015fte tam da bu noktada Git ve GitHub devreye girer. Git, da\u011f\u0131t\u0131k bir versiyon kontrol sistemi iken, GitHub bu sistemin bulut tabanl\u0131 bir bar\u0131nd\u0131rma servisidir. Bu rehber, Git Bash terminalini kullanarak yerel depolar\u0131n\u0131zda \u00e7al\u0131\u015fmay\u0131, de\u011fi\u015fiklikleri GitHub&#8217;a &#8220;push&#8221; etmeyi ve oradan &#8220;pull&#8221; etmeyi ad\u0131m ad\u0131m \u00f6\u011frenmenizi sa\u011flayacak, b\u00f6ylece versiyon kontrol d\u00fcnyas\u0131na sa\u011flam bir giri\u015f yapabileceksiniz.<\/p>\n<h3>1. Versiyon Kontrol Nedir ve Neden \u00d6nemlidir?<\/h3>\n<p>Versiyon kontrol sistemi (VCS), zaman i\u00e7inde dosyalarda ve dizinlerde yap\u0131lan de\u011fi\u015fiklikleri y\u00f6neten bir ara\u00e7t\u0131r. Bu sistemler, bir projenin farkl\u0131 versiyonlar\u0131n\u0131 kaydetmenize, ge\u00e7mi\u015fe d\u00f6nmenize ve birden fazla ki\u015finin ayn\u0131 proje \u00fczerinde e\u015f zamanl\u0131 \u00e7al\u0131\u015fmas\u0131na olanak tan\u0131r.<\/p>\n<h4>Hata Takibi ve Geri Alma<\/h4>\n<p>Bir yaz\u0131l\u0131m projesinde hata yapmak ka\u00e7\u0131n\u0131lmazd\u0131r. Versiyon kontrol sistemleri sayesinde, projenizin herhangi bir \u00f6nceki s\u00fcr\u00fcm\u00fcne kolayca geri d\u00f6nebilir, hatal\u0131 kodlar\u0131 ay\u0131klayabilir veya yap\u0131lan de\u011fi\u015fiklikleri tamamen geri alabilirsiniz. Bu, geli\u015ftirme s\u00fcrecinde b\u00fcy\u00fck bir g\u00fcvenlik a\u011f\u0131 sa\u011flar.<\/p>\n<h4>Ekip \u00c7al\u0131\u015fmas\u0131 ve \u00c7at\u0131\u015fma \u00c7\u00f6z\u00fcm\u00fc<\/h4>\n<p>Birden fazla geli\u015ftiricinin ayn\u0131 proje \u00fczerinde \u00e7al\u0131\u015ft\u0131\u011f\u0131 durumlarda, herkesin kendi de\u011fi\u015fikliklerini yaparken di\u011ferlerinin \u00e7al\u0131\u015fmalar\u0131n\u0131 bozmamas\u0131 kritiktir. VCS&#8217;ler, bu de\u011fi\u015fiklikleri birle\u015ftirmeyi (merge) kolayla\u015ft\u0131r\u0131r ve olas\u0131 \u00e7ak\u0131\u015fmalar\u0131 (conflict) tespit ederek \u00e7\u00f6zmenize yard\u0131mc\u0131 olur. B\u00f6ylece, ekip \u00fcyeleri ba\u011f\u0131ms\u0131z \u00e7al\u0131\u015f\u0131rken bile entegrasyon sorunlar\u0131 minimuma iner.<\/p>\n<h4>Proje Ge\u00e7mi\u015fi ve \u015eeffafl\u0131k<\/h4>\n<p>Her kaydedilen de\u011fi\u015fiklikle birlikte, kimin neyi ne zaman de\u011fi\u015ftirdi\u011fine dair detayl\u0131 bir ge\u00e7mi\u015f tutulur. Bu, projenin evrimini anlamak, belirli bir \u00f6zelli\u011fin ne zaman eklendi\u011fini g\u00f6rmek veya bir hatan\u0131n ne zaman ortaya \u00e7\u0131kt\u0131\u011f\u0131n\u0131 tespit etmek i\u00e7in paha bi\u00e7ilmez bir kaynakt\u0131r. \u015eeffafl\u0131k, hem bireysel geli\u015ftiriciler hem de ekipler i\u00e7in hesap verebilirli\u011fi art\u0131r\u0131r.<\/p>\n<h3>2. Git ve Git Bash Kurulumu<\/h3>\n<p>Git Bash, Windows kullan\u0131c\u0131lar\u0131 i\u00e7in Git komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rmak \u00fczere bir Unix benzeri komut sat\u0131r\u0131 deneyimi sunan bir uygulamad\u0131r. Kurulum olduk\u00e7a basittir.<\/p>\n<h4>Git Kurulumu Ad\u0131mlar\u0131<\/h4>\n<ol>\n<li>Git&#8217;in resmi web sitesi olan <a href=\"https:\/\/git-scm.com\/downloads\" target=\"_blank\">git-scm.com\/downloads<\/a> adresine gidin.<\/li>\n<li>\u0130\u015fletim sisteminize (Windows, macOS, Linux) uygun s\u00fcr\u00fcm\u00fc indirin.<\/li>\n<li>Kurulum dosyas\u0131n\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n. \u00c7o\u011fu ad\u0131mda varsay\u0131lan se\u00e7enekleri kabul edebilirsiniz, ancak &#8220;Adjusting your PATH environment&#8221; ad\u0131m\u0131nda &#8220;Git from the command line and also from 3rd-party software&#8221; se\u00e7ene\u011fini i\u015faretledi\u011finizden emin olun. Bu, Git&#8217;i komut sat\u0131r\u0131ndan ve di\u011fer uygulamalardan kullanabilmenizi sa\u011flar.<\/li>\n<li>Kurulum tamamland\u0131ktan sonra, Ba\u015flat men\u00fcs\u00fcnden &#8220;Git Bash&#8221; uygulamas\u0131n\u0131 arayarak a\u00e7abilirsiniz.<\/li>\n<\/ol>\n<h4>Git Bash&#8217;e Giri\u015f<\/h4>\n<p>Git Bash&#8217;i a\u00e7t\u0131\u011f\u0131n\u0131zda, siyah bir terminal penceresiyle kar\u015f\u0131la\u015facaks\u0131n\u0131z. Buras\u0131, Git komutlar\u0131n\u0131 yazaca\u011f\u0131n\u0131z yerdir. Windows Komut \u0130stemi&#8217;nden (CMD) veya PowerShell&#8217;den farkl\u0131 olarak, Git Bash size Linux benzeri komutlar\u0131 (<code>ls<\/code>, <code>cd<\/code>, <code>pwd<\/code> vb.) kullanma imkan\u0131 sunar.<\/p>\n<h4>Temel Git Ayarlar\u0131<\/h4>\n<p>Git&#8217;i kullanmaya ba\u015flamadan \u00f6nce, kimli\u011finizi belirtmeniz gerekir. Bu bilgiler, yapt\u0131\u011f\u0131n\u0131z her de\u011fi\u015fiklikle birlikte kaydedilir.<\/p>\n<pre><code>git config --global user.name \"Ad\u0131n\u0131z Soyad\u0131n\u0131z\"\ngit config --global user.email \"email@example.com\"\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komutlar, global olarak (yani t\u00fcm Git depolar\u0131n\u0131z i\u00e7in) kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve e-posta adresinizi ayarlar. Ayarlar\u0131n\u0131z\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code>git config --list\n<\/pre>\n<p><\/code><\/p>\n<h3>3. Yerel Git Deposu Olu\u015fturma ve Temel Komutlar<\/h3>\n<p>Bir Git deposu (repository), projenizin t\u00fcm dosyalar\u0131n\u0131 ve onlar\u0131n t\u00fcm ge\u00e7mi\u015fini i\u00e7eren bir klas\u00f6rd\u00fcr. Yerel depo, projenizin kendi bilgisayar\u0131n\u0131zdaki kopyas\u0131d\u0131r.<\/p>\n<h4>Yeni Bir Depo Ba\u015flatma (<code>git init<\/code>)<\/h4>\n<p>Mevcut bir klas\u00f6r\u00fc Git deposuna d\u00f6n\u00fc\u015ft\u00fcrmek veya yeni bir proje ba\u015flatmak i\u00e7in <code>git init<\/code> komutunu kullan\u0131r\u0131z. \u00d6ncelikle, projenizi olu\u015fturmak istedi\u011finiz dizine gidin:<\/p>\n<pre><code>mkdir my-first-project\ncd my-first-project\ngit init\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut, <code>my-first-project<\/code> klas\u00f6r\u00fcn\u00fcn i\u00e7ine gizli bir <code>.git<\/code> klas\u00f6r\u00fc olu\u015fturur. Bu klas\u00f6r, Git'in projenizin t\u00fcm versiyon ge\u00e7mi\u015fini saklad\u0131\u011f\u0131 yerdir.<\/p>\n<h4>Dosyalar\u0131 Takip Etme (<code>git add<\/code>)<\/h4>\n<p>Git, de\u011fi\u015fiklikleri kaydetmeden \u00f6nce hangi dosyalar\u0131n kaydedilece\u011fini bilmelidir. <code>git add<\/code> komutu, dosyalar\u0131 \"staging area\" (sahneleme alan\u0131) ad\u0131 verilen bir alana ekler. Bu alan, bir sonraki kaydetme i\u015flemine (commit) dahil edilecek de\u011fi\u015fiklikleri tutar.<\/p>\n<pre><code>touch index.html  # Yeni bir dosya olu\u015fturur\ngit add index.html # index.html dosyas\u0131n\u0131 sahneleme alan\u0131na ekler\ngit add .          # T\u00fcm yeni ve de\u011fi\u015ftirilmi\u015f dosyalar\u0131 sahneleme alan\u0131na ekler\n<\/pre>\n<p><\/code><\/p>\n<h4>De\u011fi\u015fiklikleri Kaydetme (<code>git commit<\/code>)<\/h4>\n<p>Sahneleme alan\u0131ndaki de\u011fi\u015fiklikleri projenizin ge\u00e7mi\u015fine kal\u0131c\u0131 olarak kaydetmek i\u00e7in <code>git commit<\/code> komutunu kullan\u0131r\u0131z. Her commit, bir mesaj i\u00e7ermelidir ki bu mesaj, o commit'te ne gibi de\u011fi\u015fiklikler yap\u0131ld\u0131\u011f\u0131n\u0131 a\u00e7\u0131klar.<\/p>\n<pre><code>git commit -m \"\u0130lk commit: index.html dosyas\u0131 eklendi\"\n<\/pre>\n<p><\/code><\/p>\n<p><code>-m<\/code> bayra\u011f\u0131, commit mesaj\u0131n\u0131 do\u011frudan komut sat\u0131r\u0131nda belirtmenizi sa\u011flar.<\/p>\n<h4>Depo Durumunu Kontrol Etme (<code>git status<\/code>, <code>git log<\/code>)<\/h4>\n<p>Projenizin mevcut durumunu g\u00f6rmek i\u00e7in <code>git status<\/code> komutunu kullanabilirsiniz. Hangi dosyalar\u0131n de\u011fi\u015ftirildi\u011fini, sahneleme alan\u0131nda oldu\u011funu veya takip edilmedi\u011fini g\u00f6sterir.<\/p>\n<pre><code>git status\n<\/pre>\n<p><\/code><\/p>\n<p>Projenizin commit ge\u00e7mi\u015fini g\u00f6rmek i\u00e7in ise <code>git log<\/code> komutunu kullan\u0131r\u0131z. Bu, her commit'in yazar\u0131n\u0131, tarihini ve mesaj\u0131n\u0131 g\u00f6sterir.<\/p>\n<pre><code>git log\n<\/pre>\n<p><\/code><\/p>\n<h3>4. GitHub'a Giri\u015f ve Uzak Depo \u0130li\u015fkisi<\/h3>\n<p>GitHub, Git depolar\u0131n\u0131z\u0131 bar\u0131nd\u0131rmak i\u00e7in kullan\u0131lan pop\u00fcler bir bulut servisidir. Projelerinizi GitHub'a y\u00fckleyerek, d\u00fcnyan\u0131n herhangi bir yerinden eri\u015febilir, ba\u015fkalar\u0131yla i\u015fbirli\u011fi yapabilir ve projelerinizi yedekleyebilirsiniz.<\/p>\n<h4>GitHub Hesab\u0131 Olu\u015fturma<\/h4>\n<p>Hen\u00fcz bir GitHub hesab\u0131n\u0131z yoksa, <a href=\"https:\/\/github.com\/join\" target=\"_blank\">github.com\/join<\/a> adresinden \u00fccretsiz bir hesap olu\u015fturman\u0131z gerekir. Ad\u0131mlar\u0131 takip ederek kaydolun ve e-posta adresinizi do\u011frulay\u0131n.<\/p>\n<h4>Yeni Bir GitHub Deposu Olu\u015fturma<\/h4>\n<ol>\n<li>GitHub hesab\u0131n\u0131za giri\u015f yap\u0131n.<\/li>\n<li>Sa\u011f \u00fcst k\u00f6\u015fedeki \"+\" simgesine t\u0131klay\u0131n ve \"New repository\" se\u00e7ene\u011fini se\u00e7in.<\/li>\n<li>Deponuza bir isim verin (\u00f6rne\u011fin, <code>my-first-project<\/code>).<\/li>\n<li>A\u00e7\u0131klama ekleyebilirsiniz (iste\u011fe ba\u011fl\u0131).<\/li>\n<li>Deponun \"Public\" (herkes g\u00f6rebilir) veya \"Private\" (sadece siz ve yetki verdikleriniz g\u00f6rebilir) olaca\u011f\u0131n\u0131 se\u00e7in.<\/li>\n<li>\"Initialize this repository with a README\" se\u00e7ene\u011fini \u0130\u015eARETLEMEDEN b\u0131rak\u0131n, \u00e7\u00fcnk\u00fc yerel bir depoyu ba\u011flayaca\u011f\u0131z.<\/li>\n<li>\"Create repository\" butonuna t\u0131klay\u0131n.<\/li>\n<\/ol>\n<p>Depoyu olu\u015fturduktan sonra, GitHub size yerel deponuzu bu uzak depoya nas\u0131l ba\u011flayaca\u011f\u0131n\u0131za dair komutlar g\u00f6sterecektir. Bu komutlar\u0131 kullanaca\u011f\u0131z.<\/p>\n<h4>Yerel Depoyu Uzak Depoya Ba\u011flama (<code>git remote add<\/code>)<\/h4>\n<p>Yerel deponuzu GitHub'daki uzak depoya ba\u011flamak i\u00e7in <code>git remote add<\/code> komutunu kullan\u0131r\u0131z. Bu komut, uzak deponuza bir takma ad (genellikle <code>origin<\/code>) verir ve URL'sini belirtir.<\/p>\n<pre><code>git remote add origin https:\/\/github.com\/Kullan\u0131c\u0131Ad\u0131n\u0131z\/my-first-project.git\n<\/pre>\n<p><\/code><\/p>\n<p><code>Kullan\u0131c\u0131Ad\u0131n\u0131z<\/code> yerine kendi GitHub kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve <code>my-first-project<\/code> yerine deponuzun ad\u0131n\u0131 yazmay\u0131 unutmay\u0131n. Bu komut, yerel deponuza uzak deponun nerede oldu\u011funu s\u00f6yler.<\/p>\n<h3>5. De\u011fi\u015fiklikleri Uzak Depoya G\u00f6nderme: Pushing<\/h3>\n<p>Yerel deponuzda yapt\u0131\u011f\u0131n\u0131z ve commit etti\u011finiz de\u011fi\u015fiklikleri GitHub'daki uzak depoya g\u00f6nderme i\u015flemine \"push\" denir. Bu, \u00e7al\u0131\u015fmalar\u0131n\u0131z\u0131 yedeklemenin ve di\u011fer ekip \u00fcyeleriyle payla\u015fman\u0131n yoludur.<\/p>\n<h4>Push \u0130\u015flemi Nedir?<\/h4>\n<p>Push, yerel deponuzdaki commit'leri uzak depoya y\u00fckler. Genellikle, yerel deponuzdaki ana dal\u0131 (<code>main<\/code> veya <code>master<\/code>) uzak deponun ana dal\u0131na g\u00f6nderirsiniz. Bir commit'i push etti\u011finizde, o commit ve ondan \u00f6nceki t\u00fcm commit'ler uzak depoya aktar\u0131l\u0131r.<\/p>\n<h4>\u0130lk Push (<code>git push -u origin main<\/code>)<\/h4>\n<p>Bir depoyu ilk kez uzak depoya push ederken, yerel dal\u0131n\u0131z\u0131 uzak daldaki bir daldan takip etmesini belirtmek i\u00e7in <code>-u<\/code> (veya <code>--set-upstream<\/code>) bayra\u011f\u0131n\u0131 kullan\u0131r\u0131z. Bu, sonraki push ve pull i\u015flemleri i\u00e7in varsay\u0131lan bir ba\u011flant\u0131 kurar.<\/p>\n<pre><code>git push -u origin main\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut, yerel <code>main<\/code> dal\u0131ndaki t\u00fcm commit'leri <code>origin<\/code> (yani GitHub'daki deponuz) \u00fczerindeki <code>main<\/code> dal\u0131na g\u00f6nderir. Sizden GitHub kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve parolan\u0131z\u0131 (veya ki\u015fisel eri\u015fim token'\u0131n\u0131z\u0131) girmeniz istenebilir.<\/p>\n<h4>Sonraki Push \u0130\u015flemleri (<code>git push<\/code>)<\/h4>\n<p>\u0130lk push i\u015fleminden sonra, yerel dal\u0131n\u0131z\u0131n uzak daldan takip etti\u011fini belirtti\u011finiz i\u00e7in, sonraki push i\u015flemleri i\u00e7in sadece <code>git push<\/code> yazman\u0131z yeterlidir:<\/p>\n<pre><code># Yeni de\u011fi\u015fiklikler yap\u0131n, add ve commit edin\necho \"console.log('Hello Git!');\" >> script.js\ngit add script.js\ngit commit -m \"script.js eklendi\"\n\n# De\u011fi\u015fiklikleri uzak depoya g\u00f6nderin\ngit push\n<\/pre>\n<p><\/code><\/p>\n<h3>6. Uzak Depodan De\u011fi\u015fiklikleri \u00c7ekme: Pulling<\/h3>\n<p>Ekip arkada\u015flar\u0131n\u0131z\u0131n veya sizden ba\u015fka birinin GitHub'daki depoya yapt\u0131\u011f\u0131 de\u011fi\u015fiklikleri kendi yerel deponuza indirme i\u015flemine \"pull\" denir. Bu, projenizin g\u00fcncel kalmas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>Pull \u0130\u015flemi Nedir?<\/h4>\n<p>Pull, uzak depodaki de\u011fi\u015fiklikleri yerel deponuza indirir ve yerel dal\u0131n\u0131zla birle\u015ftirir (merge). Bu i\u015flem asl\u0131nda iki ayr\u0131 ad\u0131mdan olu\u015fur: <code>git fetch<\/code> (de\u011fi\u015fiklikleri indirir ama birle\u015ftirmez) ve <code>git merge<\/code> (indirilen de\u011fi\u015fiklikleri yerel dala birle\u015ftirir).<\/p>\n<h4>De\u011fi\u015fiklikleri \u00c7ekme (<code>git pull<\/code>)<\/h4>\n<p>Uzak depodaki en son de\u011fi\u015fiklikleri almak i\u00e7in <code>git pull<\/code> komutunu kullan\u0131r\u0131z:<\/p>\n<pre><code>git pull origin main\n<\/pre>\n<p><\/code><\/p>\n<p>E\u011fer yerel dal\u0131n\u0131z uzak dal\u0131 takip ediyorsa (ilk push'ta <code>-u<\/code> ile ayarlad\u0131\u011f\u0131m\u0131z gibi), sadece <code>git pull<\/code> yazman\u0131z yeterlidir:<\/p>\n<pre><code>git pull\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut, uzak depodaki <code>main<\/code> dal\u0131ndaki t\u00fcm yeni commit'leri al\u0131r ve bunlar\u0131 yerel <code>main<\/code> dal\u0131n\u0131zla birle\u015ftirir.<\/p>\n<h4>Fetch ve Merge Fark\u0131 (<code>git fetch<\/code>, <code>git merge<\/code>)<\/h4>\n<p><code>git pull<\/code>, asl\u0131nda <code>git fetch<\/code> ve <code>git merge<\/code> komutlar\u0131n\u0131n birle\u015fimidir.<\/p>\n<ul>\n<li><code>git fetch origin main<\/code>: Uzak depodaki <code>main<\/code> dal\u0131ndaki t\u00fcm yeni de\u011fi\u015fiklikleri indirir, ancak bunlar\u0131 yerel dal\u0131n\u0131zla otomatik olarak birle\u015ftirmez. Bu de\u011fi\u015fiklikler yerel deponuzda \"origin\/main\" gibi bir uzak izleme dal\u0131nda saklan\u0131r. Bu, de\u011fi\u015fiklikleri incelemek ve daha sonra manuel olarak birle\u015ftirmek istedi\u011finizde kullan\u0131\u015fl\u0131d\u0131r.<\/li>\n<li><code>git merge origin\/main<\/code>: \u0130ndirilen uzak izleme dal\u0131ndaki de\u011fi\u015fiklikleri (bu \u00f6rnekte <code>origin\/main<\/code>) mevcut yerel dal\u0131n\u0131zla birle\u015ftirir.<\/li>\n<\/ul>\n<p>Genellikle, h\u0131zl\u0131 bir \u015fekilde g\u00fcncel kalmak i\u00e7in <code>git pull<\/code> kullanmak yeterlidir. Ancak, de\u011fi\u015fiklikleri birle\u015ftirmeden \u00f6nce incelemek isterseniz <code>git fetch<\/code> ve ard\u0131ndan <code>git merge<\/code> ad\u0131mlar\u0131n\u0131 ayr\u0131 ayr\u0131 kullanabilirsiniz.<\/p>\n<h3>7. Bran\u00e7lar (Dallar) ile \u00c7al\u0131\u015fma<\/h3>\n<p>Bran\u00e7lar, bir projenin ana geli\u015ftirme hatt\u0131ndan ayr\u0131l\u0131p ba\u011f\u0131ms\u0131z bir \u015fekilde \u00e7al\u0131\u015fmaya devam etmenizi sa\u011flayan g\u00fc\u00e7l\u00fc bir Git \u00f6zelli\u011fidir. Bu, yeni \u00f6zellikler geli\u015ftirmek veya hatalar\u0131 d\u00fczeltmek i\u00e7in ana kodu etkilemeden g\u00fcvenli bir alan yarat\u0131r.<\/p>\n<h4>Bran\u00e7 Nedir ve Neden Kullan\u0131l\u0131r?<\/h4>\n<p>Bir bran\u00e7, projenizin mevcut durumunun bir kopyas\u0131 gibidir. Genellikle, ana geli\u015ftirme hatt\u0131 (<code>main<\/code> veya <code>master<\/code>) kararl\u0131 kod i\u00e7erirken, yeni \u00f6zellikler veya hata d\u00fczeltmeleri i\u00e7in ayr\u0131 bran\u00e7lar olu\u015fturulur. Bu sayede, ana kod bozulmadan yeni geli\u015ftirmeler yap\u0131labilir ve test edilebilir. \u0130\u015flem tamamland\u0131\u011f\u0131nda, bu bran\u00e7 ana dala geri birle\u015ftirilir.<\/p>\n<h4>Yeni Bran\u00e7 Olu\u015fturma ve Ge\u00e7i\u015f (<code>git branch<\/code>, <code>git checkout<\/code>)<\/h4>\n<p>Yeni bir bran\u00e7 olu\u015fturmak i\u00e7in <code>git branch<\/code> komutunu kullan\u0131r\u0131z:<\/p>\n<pre><code>git branch yeni-ozellik\n<\/pre>\n<p><\/code><\/p>\n<p>Mevcut bran\u00e7lar\u0131 g\u00f6rmek i\u00e7in:<\/p>\n<pre><code>git branch\n<\/pre>\n<p><\/code><\/p>\n<p>Olu\u015fturdu\u011funuz bran\u00e7a ge\u00e7i\u015f yapmak i\u00e7in <code>git checkout<\/code> komutunu kullan\u0131r\u0131z:<\/p>\n<pre><code>git checkout yeni-ozellik\n<\/pre>\n<p><\/code><\/p>\n<p>Hem bran\u00e7 olu\u015fturup hem de ona ge\u00e7i\u015f yapmak i\u00e7in k\u0131sa yol:<\/p>\n<pre><code>git checkout -b yeni-ozellik\n<\/pre>\n<p><\/code><\/p>\n<h4>Bran\u00e7lar\u0131 Birle\u015ftirme (<code>git merge<\/code>)<\/h4>\n<p>Bir bran\u00e7 \u00fczerinde \u00e7al\u0131\u015fmay\u0131 bitirdikten ve de\u011fi\u015fikliklerinizi commit ettikten sonra, bu bran\u00e7taki de\u011fi\u015fiklikleri ana dala (veya ba\u015fka bir dala) geri birle\u015ftirmek istersiniz. \u00d6ncelikle, birle\u015ftirmek istedi\u011finiz ana dala ge\u00e7i\u015f yap\u0131n:<\/p>\n<pre><code>git checkout main\n<\/pre>\n<p><\/code><\/p>\n<p>Ard\u0131ndan, <code>yeni-ozellik<\/code> branc\u0131n\u0131 <code>main<\/code> dal\u0131na birle\u015ftirin:<\/p>\n<pre><code>git merge yeni-ozellik\n<\/pre>\n<p><\/code><\/p>\n<p>E\u011fer birle\u015ftirme s\u0131ras\u0131nda \u00e7ak\u0131\u015fmalar (conflict) olursa, Git size hangi dosyalar\u0131n \u00e7ak\u0131\u015ft\u0131\u011f\u0131n\u0131 bildirir. Bu dosyalar\u0131 manuel olarak d\u00fczenleyip \u00e7ak\u0131\u015fmalar\u0131 \u00e7\u00f6zmeniz ve ard\u0131ndan de\u011fi\u015fiklikleri commit etmeniz gerekir.<\/p>\n<p>Birle\u015ftirme i\u015flemi tamamland\u0131ktan sonra, art\u0131k ihtiyac\u0131n\u0131z olmayan branc\u0131 silebilirsiniz:<\/p>\n<pre><code>git branch -d yeni-ozellik\n<\/pre>\n<p><\/code><\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Git Bash ve GitHub, modern yaz\u0131l\u0131m geli\u015ftirmenin temel ta\u015flar\u0131d\u0131r. Bu rehberde \u00f6\u011frendi\u011finiz <code>git init<\/code>, <code>add<\/code>, <code>commit<\/code>, <code>push<\/code>, <code>pull<\/code> ve <code>branch<\/code> gibi temel komutlar, versiyon kontrol d\u00fcnyas\u0131na sa\u011flam bir ba\u015flang\u0131\u00e7 yapman\u0131z\u0131 sa\u011flayacakt\u0131r. Unutmay\u0131n, Git ve GitHub'\u0131 etkili bir \u015fekilde kullanman\u0131n anahtar\u0131 pratik yapmakt\u0131r. Kendi k\u00fc\u00e7\u00fck projelerinizi olu\u015fturarak, de\u011fi\u015fiklikler yaparak, push ve pull i\u015flemleri ger\u00e7ekle\u015ftirerek bu ara\u00e7lara hakim olabilirsiniz. Bu beceriler, hem ki\u015fisel projelerinizde d\u00fczeni sa\u011flaman\u0131za hem de ekip i\u00e7inde daha verimli \u00e7al\u0131\u015fman\u0131za olanak tan\u0131yacakt\u0131r. Ba\u015far\u0131lar dileriz!<\/p>\n<h3>SSS (S\u0131k Sorulan Sorular)<\/h3>\n<h4>Git ve GitHub aras\u0131ndaki fark nedir?<\/h4>\n<p>Git, yerel bilgisayar\u0131n\u0131zda \u00e7al\u0131\u015fan bir versiyon kontrol sistemidir. Dosyalar\u0131n\u0131z\u0131n ge\u00e7mi\u015fini takip etmenizi, de\u011fi\u015fiklikleri kaydetmenizi ve farkl\u0131 versiyonlar aras\u0131nda ge\u00e7i\u015f yapman\u0131z\u0131 sa\u011flar. GitHub ise Git depolar\u0131n\u0131z\u0131 bar\u0131nd\u0131rmak i\u00e7in kullan\u0131lan bulut tabanl\u0131 bir platformdur. Projelerinizi \u00e7evrimi\u00e7i olarak saklaman\u0131za, ba\u015fkalar\u0131yla i\u015fbirli\u011fi yapman\u0131za ve a\u00e7\u0131k kaynak projelerde yer alman\u0131za olanak tan\u0131r.<\/p>\n<h4>Git'i GitHub olmadan kullanabilir miyim?<\/h4>\n<p>Evet, Git tamamen yerel olarak \u00e7al\u0131\u015fabilen bir ara\u00e7t\u0131r. GitHub gibi bir uzak depoya ihtiya\u00e7 duymadan da projelerinizin versiyon kontrol\u00fcn\u00fc sa\u011flayabilirsiniz. Ancak GitHub, projelerinizi yedeklemek, ekip \u00fcyeleriyle i\u015fbirli\u011fi yapmak ve projelerinizi d\u00fcnyaya a\u00e7mak i\u00e7in b\u00fcy\u00fck avantajlar sunar.<\/p>\n<h4>Yanl\u0131\u015f bir commit yaparsam ne olur? Geri alabilir miyim?<\/h4>\n<p>Evet, Git'in en g\u00fc\u00e7l\u00fc \u00f6zelliklerinden biri, yap\u0131lan hatalar\u0131 geri alabilme yetene\u011fidir. <code>git reset<\/code> veya <code>git revert<\/code> gibi komutlarla commit'leri geri alabilir veya de\u011fi\u015ftirebilirsiniz. Ancak bu komutlar\u0131 dikkatli kullanmak gerekir, \u00f6zellikle de uzak depoya push edilmi\u015f commit'ler \u00fczerinde \u00e7al\u0131\u015f\u0131rken.<\/p>\n<h4>Pull request (PR) nedir?<\/h4>\n<p>Pull request (veya Merge Request), GitHub gibi platformlarda bir geli\u015ftiricinin kendi branc\u0131nda yapt\u0131\u011f\u0131 de\u011fi\u015fiklikleri ana depoya birle\u015ftirmek i\u00e7in yapt\u0131\u011f\u0131 bir istektir. Bu, de\u011fi\u015fikliklerin ana depoya eklenmeden \u00f6nce di\u011fer ekip \u00fcyeleri taraf\u0131ndan incelenmesini, yorum yap\u0131lmas\u0131n\u0131 ve onaylanmas\u0131n\u0131 sa\u011flar. Bu, ekip i\u00e7inde kod kalitesini ve i\u015fbirli\u011fini art\u0131ran \u00f6nemli bir s\u00fcre\u00e7tir.<\/p>\n<h4>Git'te \"conflict\" (\u00e7ak\u0131\u015fma) ne anlama gelir? Nas\u0131l \u00e7\u00f6z\u00fcl\u00fcr?<\/h4>\n<p>Bir \"conflict\", iki farkl\u0131 geli\u015ftiricinin ayn\u0131 dosyan\u0131n ayn\u0131 sat\u0131rlar\u0131nda de\u011fi\u015fiklik yapmas\u0131 ve bu de\u011fi\u015fikliklerin Git taraf\u0131ndan otomatik olarak birle\u015ftirilememesi durumunda ortaya \u00e7\u0131kar. Git, \u00e7ak\u0131\u015fan b\u00f6lgeleri \u00f6zel i\u015faretleyicilerle g\u00f6sterir. \u00c7ak\u0131\u015fmay\u0131 \u00e7\u00f6zmek i\u00e7in, bu i\u015faretleyicileri i\u00e7eren dosyalar\u0131 manuel olarak d\u00fczenlemeniz, hangi de\u011fi\u015fikliklerin kalaca\u011f\u0131na karar vermeniz ve ard\u0131ndan dosyalar\u0131 tekrar commit etmeniz gerekir.<\/p>\n","protected":false},"excerpt":{"rendered":"Modern yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, projelerinizi y\u00f6netmek, de\u011fi\u015fiklikleri takip etmek ve ekip arkada\u015flar\u0131n\u0131zla sorunsuz bir \u015fekilde i\u015fbirli\u011f&#8230;","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":[1328],"tags":[],"class_list":{"0":"post-37911","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-bash","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>Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol - 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\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol\" \/>\n<meta property=\"og:description\" content=\"Modern yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, projelerinizi y\u00f6netmek, de\u011fi\u015fiklikleri takip etmek ve ekip arkada\u015flar\u0131n\u0131zla sorunsuz bir \u015fekilde i\u015fbirli\u011f...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-18T10:00:34+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=\"13 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol\",\"datePublished\":\"2026-01-18T10:00:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\"},\"wordCount\":2306,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Bash\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\",\"name\":\"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-18T10:00:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol\"}]},{\"@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":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol - 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\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/","og_locale":"tr_TR","og_type":"article","og_title":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol","og_description":"Modern yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, projelerinizi y\u00f6netmek, de\u011fi\u015fiklikleri takip etmek ve ekip arkada\u015flar\u0131n\u0131zla sorunsuz bir \u015fekilde i\u015fbirli\u011f...","og_url":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-18T10:00:34+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"13 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol","datePublished":"2026-01-18T10:00:34+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/"},"wordCount":2306,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Bash"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/","url":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/","name":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-18T10:00:34+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/git-bash-ve-github-baslangic-rehberi-pushing-pulling-ve-versiyon-kontrol\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Git Bash ve GitHub Ba\u015flang\u0131\u00e7 Rehberi: Pushing, Pulling ve Versiyon Kontrol"}]},{"@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\/37911","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=37911"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37911\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37911"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37911"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37911"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}