{"id":40852,"date":"2026-03-01T19:40:56","date_gmt":"2026-03-01T16:40:56","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=40852"},"modified":"2026-03-01T19:40:56","modified_gmt":"2026-03-01T16:40:56","slug":"giti-ubuntu-18-04e-yukleme-kapsamli-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/","title":{"rendered":"Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi"},"content":{"rendered":"<p><body><\/p>\n<h2>Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi<\/h2>\n<h3>Giri\u015f: Git ve Neden \u00d6nemli?<\/h3>\n<p>Yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, projelerin farkl\u0131 a\u015famalar\u0131n\u0131 y\u00f6netmek, ekip \u00fcyeleri aras\u0131nda koordinasyonu sa\u011flamak ve yap\u0131lan de\u011fi\u015fiklikleri g\u00fcvenli bir \u015fekilde takip etmek hayati \u00f6neme sahiptir. Bu karma\u015f\u0131k s\u00fcreci basitle\u015ftiren ve verimli hale getiren ara\u00e7lardan biri de Git&#8217;tir. Git, d\u00fcnya genelinde milyonlarca geli\u015ftirici taraf\u0131ndan kullan\u0131lan, da\u011f\u0131t\u0131k bir s\u00fcr\u00fcm kontrol sistemidir. Bu makale, \u00f6zellikle Ubuntu 18.04 i\u015fletim sistemine Git&#8217;in nas\u0131l kurulaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alacakt\u0131r.<\/p>\n<h4>Git Nedir?<\/h4>\n<p>Git, Linus Torvalds taraf\u0131ndan 2005 y\u0131l\u0131nda Linux \u00e7ekirde\u011finin geli\u015ftirilmesi s\u0131ras\u0131nda ortaya \u00e7\u0131kar\u0131lm\u0131\u015f, a\u00e7\u0131k kaynakl\u0131 bir s\u00fcr\u00fcm kontrol sistemidir. Geleneksel merkezi s\u00fcr\u00fcm kontrol sistemlerinin (SVN, CVS gibi) aksine, Git da\u011f\u0131t\u0131k bir yap\u0131ya sahiptir. Bu, her geli\u015ftiricinin projenin tam bir kopyas\u0131na (depoya) sahip oldu\u011fu anlam\u0131na gelir. Bu da\u011f\u0131t\u0131k yap\u0131, a\u011f ba\u011flant\u0131s\u0131 olmasa bile geli\u015ftiricilerin yerel olarak de\u011fi\u015fiklik yapmalar\u0131na, taahh\u00fct etmelerine (commit) ve projenin ge\u00e7mi\u015fini incelemelerine olanak tan\u0131r. A\u011f ba\u011flant\u0131s\u0131 kuruldu\u011funda, bu de\u011fi\u015fiklikler merkezi bir depoyla veya di\u011fer geli\u015ftiricilerin depolar\u0131yla senkronize edilebilir.<\/p>\n<h4>S\u00fcr\u00fcm Kontrol Sistemleri ve Git&#8217;in Avantajlar\u0131<\/h4>\n<p>S\u00fcr\u00fcm kontrol sistemleri (VCS), zaman i\u00e7inde dosyalarda yap\u0131lan de\u011fi\u015fiklikleri kaydetmek ve y\u00f6netmek i\u00e7in kullan\u0131lan sistemlerdir. Bu sistemler, projenin herhangi bir \u00f6nceki s\u00fcr\u00fcm\u00fcne geri d\u00f6nme, farkl\u0131 s\u00fcr\u00fcmler aras\u0131ndaki farklar\u0131 g\u00f6rme ve birden fazla ki\u015finin ayn\u0131 dosya \u00fczerinde e\u015f zamanl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flama gibi kritik yetenekler sunar.<\/p>\n<p>Git&#8217;in ba\u015fl\u0131ca avantajlar\u0131 \u015funlard\u0131r:<\/p>\n<p>*   <strong>Da\u011f\u0131t\u0131k Yap\u0131:<\/strong> Her geli\u015ftiricinin projenin tam bir yerel kopyas\u0131na sahip olmas\u0131, \u00e7evrimd\u0131\u015f\u0131 \u00e7al\u0131\u015fmay\u0131 m\u00fcmk\u00fcn k\u0131lar ve merkezi sunucunun \u00e7\u00f6kmesi durumunda veri kayb\u0131 riskini azalt\u0131r.<br \/>\n*   <strong>H\u0131z:<\/strong> Git, performans\u0131 \u00f6n planda tutacak \u015fekilde tasarlanm\u0131\u015ft\u0131r. \u00c7o\u011fu i\u015flem yerel olarak ger\u00e7ekle\u015fti\u011fi i\u00e7in olduk\u00e7a h\u0131zl\u0131d\u0131r.<br \/>\n*   <strong>Veri B\u00fct\u00fcnl\u00fc\u011f\u00fc:<\/strong> Git, kriptografik karma i\u015flevleri (SHA-1) kullanarak t\u00fcm dosyalar\u0131n ve de\u011fi\u015fikliklerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flar.<br \/>\n*   <strong>Bran\u015flama ve Birle\u015ftirme:<\/strong> Git&#8217;in en g\u00fc\u00e7l\u00fc \u00f6zelliklerinden biri, kolay ve h\u0131zl\u0131 bran\u015flama (branching) ve birle\u015ftirme (merging) yetenekleridir. Bu, geli\u015ftiricilerin ana kod taban\u0131n\u0131 etkilemeden yeni \u00f6zellikler \u00fczerinde g\u00fcvenle \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.<br \/>\n*   <strong>A\u00e7\u0131k Kaynak:<\/strong> Git a\u00e7\u0131k kaynakl\u0131d\u0131r ve geni\u015f bir topluluk taraf\u0131ndan desteklenir, s\u00fcrekli olarak geli\u015ftirilir.<\/p>\n<h4>Neden Ubuntu 18.04?<\/h4>\n<p>Ubuntu 18.04, &#8220;Bionic Beaver&#8221; kod adl\u0131, Nisan 2018&#8217;de piyasaya s\u00fcr\u00fclen bir Uzun S\u00fcreli Destek (LTS) s\u00fcr\u00fcm\u00fcd\u00fcr. LTS s\u00fcr\u00fcmleri, genellikle 5 y\u0131l boyunca g\u00fcvenlik g\u00fcncellemeleri ve hata d\u00fczeltmeleri al\u0131r. Bu, onu sunucular ve uzun vadeli geli\u015ftirme ortamlar\u0131 i\u00e7in son derece pop\u00fcler ve g\u00fcvenilir bir se\u00e7im haline getirir. Destek s\u00fcresinin uzun olmas\u0131, sistem y\u00f6neticilerinin ve geli\u015ftiricilerin s\u0131k s\u0131k i\u015fletim sistemi y\u00fckseltme ihtiyac\u0131 duymadan istikrarl\u0131 bir ortamda \u00e7al\u0131\u015fmas\u0131na olanak tan\u0131r. Git gibi temel bir arac\u0131 bu t\u00fcr istikrarl\u0131 bir platforma kurmak, uzun vadeli projeler i\u00e7in sa\u011flam bir temel olu\u015fturur.<\/p>\n<h3>Ubuntu 18.04&#8217;e Git Kurulumu \u0130\u00e7in \u00d6n Haz\u0131rl\u0131klar<\/h3>\n<p>Git kurulumuna ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan ve gerekli ba\u011f\u0131ml\u0131l\u0131klar\u0131n y\u00fckl\u00fc oldu\u011fundan emin olmak \u00f6nemlidir. Bu ad\u0131mlar, sorunsuz bir kurulum s\u00fcreci i\u00e7in zemin haz\u0131rlar.<\/p>\n<h4>Sistem G\u00fcncellemesi<\/h4>\n<p>Herhangi bir yaz\u0131l\u0131m kurulumuna ba\u015flamadan \u00f6nce, Ubuntu sisteminizin paket listelerini g\u00fcncellemek ve mevcut paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltmek iyi bir uygulamad\u0131r. Bu, potansiyel ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 \u00f6nler ve sisteminizin g\u00fcncel ve g\u00fcvenli kalmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>Terminalinizi a\u00e7\u0131n (Ctrl+Alt+T) ve a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade<\/code><\/pre>\n<p>*   <code>sudo apt update<\/code>: Bu komut, yerel paket indeksinizi uzak depolardaki en son bilgilerle senkronize eder. B\u00f6ylece sisteminiz hangi paketlerin g\u00fcncellenebilece\u011fini veya kurulabilece\u011fini bilir.<br \/>\n*   <code>sudo apt upgrade<\/code>: Bu komut, <code>update<\/code> ile g\u00fcncellenen indeks bilgilerine dayanarak, sisteminizdeki y\u00fckl\u00fc paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltir.<\/p>\n<p>Bu i\u015flem biraz zaman alabilir. \u0130\u015flem tamamland\u0131\u011f\u0131nda, sisteminiz Git kurulumu i\u00e7in daha haz\u0131r olacakt\u0131r.<\/p>\n<h4>Gerekli Ba\u011f\u0131ml\u0131l\u0131klar\u0131n Y\u00fcklenmesi<\/h4>\n<p>\u00d6zellikle Git&#8217;i kaynak koddan derleyerek kurmay\u0131 planl\u0131yorsan\u0131z, baz\u0131 temel geli\u015ftirme ara\u00e7lar\u0131na ve k\u00fct\u00fcphanelerine ihtiyac\u0131n\u0131z olacakt\u0131r. APT paket y\u00f6neticisi ile kurulum yapacaksan\u0131z, \u00e7o\u011fu ba\u011f\u0131ml\u0131l\u0131k otomatik olarak y\u00fcklenecektir. Ancak, her iki durumda da baz\u0131 temel ba\u011f\u0131ml\u0131l\u0131klar\u0131n varl\u0131\u011f\u0131ndan emin olmak faydal\u0131d\u0131r.<\/p>\n<p>Kaynak koddan kurulum i\u00e7in gerekli olacak ba\u011f\u0131ml\u0131l\u0131klar\u0131 \u015fimdi y\u00fckleyebiliriz. Bu, APT kurulumu i\u00e7in zararl\u0131 de\u011fildir ve gelecekteki olas\u0131 ihtiya\u00e7lar i\u00e7in haz\u0131rl\u0131kl\u0131 olman\u0131z\u0131 sa\u011flar:<\/p>\n<pre><code class=\"language-bash\">sudo apt install build-essential libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext make cmake perl<\/code><\/pre>\n<p>Bu komutlar \u015funlar\u0131 y\u00fckler:<br \/>\n*   <code>build-essential<\/code>: Derleme i\u00e7in gerekli temel paketleri (gcc, g++, make vb.) i\u00e7erir.<br \/>\n*   <code>libssl-dev<\/code>: SSL\/TLS protokolleri i\u00e7in geli\u015ftirme k\u00fct\u00fcphaneleri.<br \/>\n*   <code>libghc-zlib-dev<\/code>: Zlib s\u0131k\u0131\u015ft\u0131rma k\u00fct\u00fcphanesi i\u00e7in geli\u015ftirme dosyalar\u0131.<br \/>\n*   <code>libcurl4-gnutls-dev<\/code>: cURL k\u00fct\u00fcphanesi i\u00e7in geli\u015ftirme dosyalar\u0131.<br \/>\n*   <code>libexpat1-dev<\/code>: Expat XML ayr\u0131\u015ft\u0131rma k\u00fct\u00fcphanesi i\u00e7in geli\u015ftirme dosyalar\u0131.<br \/>\n*   <code>gettext<\/code>: \u00c7ok dilli programlama deste\u011fi i\u00e7in ara\u00e7lar.<br \/>\n*   <code>make<\/code>: Kaynak koddan program derlemek i\u00e7in kullan\u0131lan bir ara\u00e7.<br \/>\n*   <code>cmake<\/code>: Derleme s\u00fcrecini y\u00f6netmek i\u00e7in kullan\u0131lan bir ara\u00e7.<br \/>\n*   <code>perl<\/code>: Perl programlama dili yorumlay\u0131c\u0131s\u0131, Git&#8217;in baz\u0131 scriptleri i\u00e7in gereklidir.<\/p>\n<h4>Kullan\u0131c\u0131 Yetkileri (sudo Kullan\u0131m\u0131)<\/h4>\n<p>Ubuntu&#8217;da sistem \u00e7ap\u0131nda de\u011fi\u015fiklikler yapmak i\u00e7in y\u00f6netici (root) yetkilerine ihtiyac\u0131n\u0131z vard\u0131r. Bu yetkiler genellikle <code>sudo<\/code> komutu kullan\u0131larak elde edilir. Bu makaledeki t\u00fcm kurulum komutlar\u0131, sistem genelinde de\u011fi\u015fiklikler yapaca\u011f\u0131 i\u00e7in <code>sudo<\/code> \u00f6nekiyle birlikte verilecektir. <code>sudo<\/code> komutunu kulland\u0131\u011f\u0131n\u0131zda, kendi kullan\u0131c\u0131 \u015fifrenizi girmeniz istenecektir. Bu, g\u00fcvenlik i\u00e7in \u00f6nemli bir ad\u0131md\u0131r.<\/p>\n<h3>Y\u00f6ntem 1: APT Paket Y\u00f6neticisi ile Git Kurulumu (\u00d6nerilen)<\/h3>\n<p>Ubuntu sistemlerinde yaz\u0131l\u0131m y\u00fcklemenin en yayg\u0131n, en kolay ve genellikle en g\u00fcvenli yolu, APT (Advanced Package Tool) paket y\u00f6neticisini kullanmakt\u0131r. Bu y\u00f6ntem, Ubuntu&#8217;nun resmi depolar\u0131nda bulunan Git s\u00fcr\u00fcm\u00fcn\u00fc kurar. Genellikle bu s\u00fcr\u00fcm, en son s\u00fcr\u00fcm olmasa da, kararl\u0131 ve \u00e7o\u011fu kullan\u0131m durumu i\u00e7in yeterince g\u00fcnceldir.<\/p>\n<h4>APT Nedir?<\/h4>\n<p>APT, Debian tabanl\u0131 Linux da\u011f\u0131t\u0131mlar\u0131 (Ubuntu dahil) i\u00e7in bir paket y\u00f6netim sistemidir. Yaz\u0131l\u0131m paketlerini (programlar, k\u00fct\u00fcphaneler, belgeler vb.) kolayca kurman\u0131z\u0131, g\u00fcncellemenizi, yap\u0131land\u0131rman\u0131z\u0131 ve kald\u0131rman\u0131z\u0131 sa\u011flar. APT, yaz\u0131l\u0131m ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 otomatik olarak \u00e7\u00f6zer ve gerekli t\u00fcm bile\u015fenleri sizin i\u00e7in kurar.<\/p>\n<h4>Depolar\u0131 G\u00fcncelleme<\/h4>\n<p>Kuruluma ba\u015flamadan \u00f6nce, sisteminizin paket listelerini tekrar g\u00fcncelledi\u011finizden emin olun. Bu, en g\u00fcncel Git s\u00fcr\u00fcm\u00fcn\u00fc resmi depolardan alman\u0131z\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">sudo apt update<\/code><\/pre>\n<h4>Git Kurulum Komutu<\/h4>\n<p>Paket listeleri g\u00fcncellendikten sonra, Git&#8217;i kurmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt install git<\/code><\/pre>\n<p>Bu komut, Git paketini ve onunla birlikte gelen t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131 indirecek ve sisteminize kuracakt\u0131r. Kurulum s\u0131ras\u0131nda sizden onay istenebilir (Y\/n). <code>Y<\/code> tu\u015funa bas\u0131p Enter&#8217;a basarak devam edin.<\/p>\n<h4>Kurulumu Do\u011frulama<\/h4>\n<p>Kurulum tamamland\u0131ktan sonra, Git&#8217;in ba\u015far\u0131yla kurulup kurulmad\u0131\u011f\u0131n\u0131 ve hangi s\u00fcr\u00fcm\u00fcn y\u00fcklendi\u011fini do\u011frulamak i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">git --version<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, y\u00fckl\u00fc Git s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir, \u00f6rne\u011fin:<\/p>\n<pre><code class=\"language-\">git version 2.17.1<\/code><\/pre>\n<p>Ubuntu 18.04&#8217;\u00fcn resmi depolar\u0131ndaki Git s\u00fcr\u00fcm\u00fc genellikle 2.17.x civar\u0131ndad\u0131r. Bu s\u00fcr\u00fcm, \u00e7o\u011fu modern Git \u00f6zelli\u011fi i\u00e7in yeterli olsa da, en yeni \u00f6zellikleri veya hata d\u00fczeltmelerini i\u00e7ermeyebilir. E\u011fer en son Git s\u00fcr\u00fcm\u00fcne ihtiyac\u0131n\u0131z varsa, kaynak koddan kurulum y\u00f6ntemini d\u00fc\u015f\u00fcnmeniz gerekebilir.<\/p>\n<h3>Y\u00f6ntem 2: Kaynak Koddan Git Kurulumu (En Son S\u00fcr\u00fcm \u0130\u00e7in)<\/h3>\n<p>E\u011fer Ubuntu 18.04&#8217;\u00fcn resmi depolar\u0131ndaki Git s\u00fcr\u00fcm\u00fc sizin i\u00e7in yeterince g\u00fcncel de\u011filse ve Git&#8217;in en yeni \u00f6zelliklerine veya hata d\u00fczeltmelerine ihtiyac\u0131n\u0131z varsa, Git&#8217;i do\u011frudan kaynak koddan derleyip kurabilirsiniz. Bu y\u00f6ntem, daha fazla ad\u0131m gerektirir ancak size Git&#8217;in en g\u00fcncel s\u00fcr\u00fcm\u00fcn\u00fc kullanma esnekli\u011fi sunar.<\/p>\n<h4>Neden Kaynak Koddan Kurulum?<\/h4>\n<p>*   <strong>En Son S\u00fcr\u00fcm:<\/strong> Git&#8217;in en son kararl\u0131 s\u00fcr\u00fcm\u00fcn\u00fc veya hatta geli\u015ftirme s\u00fcr\u00fcm\u00fcn\u00fc kurman\u0131za olanak tan\u0131r.<br \/>\n*   <strong>\u00d6zelle\u015ftirme:<\/strong> Derleme se\u00e7eneklerini de\u011fi\u015ftirerek Git&#8217;i belirli ihtiya\u00e7lar\u0131n\u0131za g\u00f6re \u00f6zelle\u015ftirebilirsiniz (ileri d\u00fczey kullan\u0131c\u0131lar i\u00e7in).<br \/>\n*   <strong>Yeni \u00d6zellikler ve Hata D\u00fczeltmeleri:<\/strong> Resmi depolarda hen\u00fcz bulunmayan en yeni \u00f6zelliklere ve kritik hata d\u00fczeltmelerine eri\u015fim sa\u011flar.<\/p>\n<h4>Gerekli Ba\u011f\u0131ml\u0131l\u0131klar\u0131n Y\u00fcklenmesi<\/h4>\n<p>Kaynak koddan derleme yapmak i\u00e7in, sisteminizde bir dizi geli\u015ftirme arac\u0131n\u0131n ve k\u00fct\u00fcphanesinin bulunmas\u0131 gerekir. Bu ba\u011f\u0131ml\u0131l\u0131klar\u0131 &#8220;\u00d6n Haz\u0131rl\u0131klar&#8221; b\u00f6l\u00fcm\u00fcnde zaten belirtmi\u015ftik. E\u011fer o ad\u0131m\u0131 atlad\u0131ysan\u0131z, \u015fimdi y\u00fcklemeniz gerekmektedir:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install build-essential libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext make cmake perl<\/code><\/pre>\n<p>Bu komutlar, Git&#8217;i derlemek i\u00e7in gerekli olan t\u00fcm temel ara\u00e7lar\u0131 ve k\u00fct\u00fcphaneleri sisteminize kuracakt\u0131r.<\/p>\n<h4>Git Kaynak Kodunu \u0130ndirme<\/h4>\n<p>\u015eimdi Git&#8217;in kaynak kodunu resmi GitHub deposundan indirmemiz gerekiyor. Genellikle en son kararl\u0131 s\u00fcr\u00fcm\u00fc indirmek en iyisidir. Git&#8217;in resmi GitHub sayfas\u0131n\u0131 (github.com\/git\/git\/releases) ziyaret ederek en son s\u00fcr\u00fcm\u00fcn URL&#8217;sini bulabilirsiniz. Bu makalenin yaz\u0131ld\u0131\u011f\u0131 an itibar\u0131yla, Git 2.30.0 veya daha yeni s\u00fcr\u00fcmler mevcut olabilir. \u00d6rnek olarak, 2.39.0 s\u00fcr\u00fcm\u00fcn\u00fc indirelim:<\/p>\n<pre><code class=\"language-bash\">cd \/tmp\nwget https:\/\/github.com\/git\/git\/archive\/refs\/tags\/v2.39.0.tar.gz -O git.tar.gz<\/code><\/pre>\n<p>*   <code>cd \/tmp<\/code>: Ge\u00e7ici dosyalar i\u00e7in <code>\/tmp<\/code> dizinine ge\u00e7iyoruz.<br \/>\n*   <code>wget ... -O git.tar.gz<\/code>: Git&#8217;in kaynak kodunu i\u00e7eren s\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f dosyay\u0131 indiriyoruz ve ad\u0131n\u0131 <code>git.tar.gz<\/code> olarak kaydediyoruz. S\u00fcr\u00fcm numaras\u0131n\u0131 (\u00f6rne\u011fin <code>v2.39.0<\/code>) en g\u00fcncel olanla de\u011fi\u015ftirmeyi unutmay\u0131n.<\/p>\n<p>\u0130ndirme tamamland\u0131ktan sonra, s\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f dosyay\u0131 a\u00e7\u0131n:<\/p>\n<pre><code class=\"language-bash\">tar -xf git.tar.gz<\/code><\/pre>\n<p>Bu komut, <code>git-2.39.0<\/code> (veya indirdi\u011finiz s\u00fcr\u00fcme g\u00f6re de\u011fi\u015fen) ad\u0131nda bir dizin olu\u015fturacakt\u0131r. \u015eimdi bu dizine ge\u00e7elim:<\/p>\n<pre><code class=\"language-bash\">cd git-2.39.0<\/code><\/pre>\n<h4>Kaynak Kodu Derleme ve Y\u00fckleme<\/h4>\n<p>Kaynak kodu derlemek ve sisteminize y\u00fcklemek i\u00e7in a\u015fa\u011f\u0131daki komutlar\u0131 kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">make prefix=\/usr\/local all\nsudo make prefix=\/usr\/local install<\/code><\/pre>\n<p>*   <code>make prefix=\/usr\/local all<\/code>: Bu komut, kaynak kodu derler. <code>prefix=\/usr\/local<\/code> se\u00e7ene\u011fi, Git&#8217;in <code>\/usr\/local<\/code> dizini alt\u0131na kurulaca\u011f\u0131n\u0131 belirtir. Bu, sisteminizin varsay\u0131lan paket y\u00f6neticisi (APT) taraf\u0131ndan y\u00f6netilen Git s\u00fcr\u00fcm\u00fcyle \u00e7ak\u0131\u015fmay\u0131 \u00f6nlemek i\u00e7in iyi bir uygulamad\u0131r. <code>\/usr\/local\/bin<\/code> genellikle PATH de\u011fi\u015fkeninizde bulunur ve bu sayede yeni kurulan Git s\u00fcr\u00fcm\u00fc kullan\u0131labilir olacakt\u0131r.<br \/>\n*   <code>sudo make prefix=\/usr\/local install<\/code>: Bu komut, derlenmi\u015f Git ikililerini ve ilgili dosyalar\u0131 belirtilen \u00f6nek dizinine (bu durumda <code>\/usr\/local<\/code>) kopyalar. <code>sudo<\/code> kullan\u0131lmas\u0131, sistem dizinlerine yazma yetkisi gerekti\u011fi i\u00e7indir.<\/p>\n<p>Derleme ve y\u00fckleme i\u015flemi, sisteminizin performans\u0131na ba\u011fl\u0131 olarak birka\u00e7 dakika s\u00fcrebilir.<\/p>\n<h4>Kurulumu Do\u011frulama<\/h4>\n<p>Kaynak koddan kurulum tamamland\u0131ktan sonra, yeni kurulan Git s\u00fcr\u00fcm\u00fcn\u00fcn do\u011fru bir \u015fekilde alg\u0131land\u0131\u011f\u0131ndan emin olmak i\u00e7in s\u00fcr\u00fcm kontrol\u00fcn\u00fc yap\u0131n:<\/p>\n<pre><code class=\"language-bash\">git --version<\/code><\/pre>\n<p>E\u011fer her \u015fey yolundaysa, \u00e7\u0131kt\u0131da indirdi\u011finiz ve derledi\u011finiz s\u00fcr\u00fcm numaras\u0131 g\u00f6r\u00fcnmelidir, \u00f6rne\u011fin:<\/p>\n<pre><code class=\"language-\">git version 2.39.0<\/code><\/pre>\n<p>E\u011fer hala eski s\u00fcr\u00fcm\u00fc g\u00f6r\u00fcyorsan\u0131z (\u00f6rn. 2.17.1), bunun nedeni PATH de\u011fi\u015fkeninizin do\u011fru yap\u0131land\u0131r\u0131lmam\u0131\u015f olmas\u0131 veya yeni Git ikilisinin eski s\u00fcr\u00fcmden \u00f6nce gelmemesi olabilir. Genellikle <code>\/usr\/local\/bin<\/code> PATH&#8217;te <code>\/usr\/bin<\/code>&#8216;den \u00f6nce gelir, ancak emin olmak i\u00e7in kontrol etmekte fayda var.<\/p>\n<h3>Git Kurulumunu Do\u011frulama<\/h3>\n<p>Git&#8217;in ba\u015far\u0131yla kuruldu\u011funu teyit etmek, sonraki ad\u0131mlara g\u00fcvenle ge\u00e7menizi sa\u011flar. Bu b\u00f6l\u00fcmde, kurulumun do\u011fru yap\u0131ld\u0131\u011f\u0131ndan emin olmak i\u00e7in \u00e7e\u015fitli kontrolleri ele alaca\u011f\u0131z.<\/p>\n<h4>S\u00fcr\u00fcm Kontrol\u00fc<\/h4>\n<p>En temel do\u011frulama ad\u0131m\u0131, Git&#8217;in s\u00fcr\u00fcm\u00fcn\u00fc kontrol etmektir. Bu, Git&#8217;in sisteminizde tan\u0131nd\u0131\u011f\u0131n\u0131 ve \u00e7al\u0131\u015ft\u0131r\u0131labilir oldu\u011funu g\u00f6sterir.<\/p>\n<pre><code class=\"language-bash\">git --version<\/code><\/pre>\n<p>*   <strong>APT ile Kurulum:<\/strong> E\u011fer APT ile kurduysan\u0131z, \u00e7\u0131kt\u0131da Ubuntu 18.04&#8217;\u00fcn depolar\u0131nda bulunan Git s\u00fcr\u00fcm\u00fc (genellikle 2.17.x) g\u00f6r\u00fcnmelidir.<br \/>\n*   <strong>Kaynak Koddan Kurulum:<\/strong> E\u011fer kaynak koddan kurduysan\u0131z, \u00e7\u0131kt\u0131da derledi\u011finiz ve y\u00fckledi\u011finiz en son s\u00fcr\u00fcm (\u00f6rne\u011fin 2.39.0) g\u00f6r\u00fcnmelidir.<\/p>\n<p>E\u011fer bu komut <code>git: command not found<\/code> gibi bir hata veriyorsa, Git&#8217;in PATH de\u011fi\u015fkeninizde bulunmad\u0131\u011f\u0131 veya kurulumun ba\u015far\u0131s\u0131z oldu\u011fu anlam\u0131na gelir.<\/p>\n<h4>PATH De\u011fi\u015fkeni Kontrol\u00fc (\u00d6zellikle Kaynak Koddan Kurulum Sonras\u0131)<\/h4>\n<p>PATH de\u011fi\u015fkeni, kabu\u011funuzun \u00e7al\u0131\u015ft\u0131r\u0131labilir programlar\u0131 arad\u0131\u011f\u0131 dizinlerin bir listesidir. E\u011fer Git&#8217;i kaynak koddan kurduysan\u0131z ve <code>\/usr\/local\/bin<\/code> dizinine y\u00fcklediyseniz, bu dizinin PATH de\u011fi\u015fkeninizde oldu\u011fundan emin olman\u0131z gerekir.<\/p>\n<p>Mevcut PATH de\u011fi\u015fkeninizi g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">echo $PATH<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da <code>\/usr\/local\/bin<\/code> dizininin listelenip listelenmedi\u011fini kontrol edin. Genellikle <code>\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/usr\/games:\/usr\/local\/games:\/snap\/bin<\/code> gibi bir \u00e7\u0131kt\u0131 g\u00f6r\u00fcrs\u00fcn\u00fcz. E\u011fer <code>\/usr\/local\/bin<\/code> listeleniyorsa ve <code>\/usr\/bin<\/code>&#8216;den \u00f6nce geliyorsa, sisteminiz yeni kurdu\u011funuz Git s\u00fcr\u00fcm\u00fcn\u00fc kullanacakt\u0131r.<\/p>\n<p>E\u011fer <code>\/usr\/local\/bin<\/code> PATH&#8217;inizde yoksa veya <code>\/usr\/bin<\/code>&#8216;den sonra geliyorsa, bunu d\u00fczeltmeniz gerekebilir. Genellikle kullan\u0131c\u0131 dizininizdeki <code>.bashrc<\/code> veya <code>.profile<\/code> dosyas\u0131na a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyerek PATH&#8217;i g\u00fcncelleyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">echo 'export PATH=\"\/usr\/local\/bin:$PATH\"' >> ~\/.bashrc\nsource ~\/.bashrc<\/code><\/pre>\n<p>Bu komutlar, <code>\/usr\/local\/bin<\/code> dizinini PATH&#8217;inizin ba\u015f\u0131na ekler ve yeni terminal oturumlar\u0131 i\u00e7in etkinle\u015ftirir. Mevcut oturum i\u00e7in etkinle\u015ftirmek i\u00e7in <code>source ~\/.bashrc<\/code> komutunu \u00e7al\u0131\u015ft\u0131rman\u0131z gerekir. Bu de\u011fi\u015fiklikten sonra <code>git --version<\/code> komutunu tekrar \u00e7al\u0131\u015ft\u0131rarak do\u011frulama yap\u0131n.<\/p>\n<h3>Git&#8217;i Yap\u0131land\u0131rma (\u0130lk Ayarlar)<\/h3>\n<p>Git&#8217;i kurduktan sonra, ilk kullan\u0131mdan \u00f6nce baz\u0131 temel ayarlar\u0131 yap\u0131land\u0131rmak iyi bir uygulamad\u0131r. Bu ayarlar, yapt\u0131\u011f\u0131n\u0131z taahh\u00fctlerin (commit) kimli\u011fini belirler ve Git deneyiminizi ki\u015fiselle\u015ftirir. Bu ayarlar global olarak (t\u00fcm depolar\u0131n\u0131z i\u00e7in) veya belirli bir depo i\u00e7in yerel olarak yap\u0131labilir. Genellikle global ayarlar yeterlidir.<\/p>\n<h4>Kullan\u0131c\u0131 Ad\u0131 ve E-posta Ayar\u0131 (Global)<\/h4>\n<p>Git, her taahh\u00fcd\u00fcn kimin taraf\u0131ndan yap\u0131ld\u0131\u011f\u0131n\u0131 takip etmek i\u00e7in bir kullan\u0131c\u0131 ad\u0131 ve e-posta adresi gerektirir. Bu bilgiler, taahh\u00fct ge\u00e7mi\u015finizde g\u00f6r\u00fcn\u00fcr ve di\u011fer geli\u015ftiricilerin sizinle ileti\u015fim kurmas\u0131na yard\u0131mc\u0131 olur.<\/p>\n<p>A\u015fa\u011f\u0131daki komutlar\u0131 kullanarak global kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve e-posta adresinizi ayarlay\u0131n:<\/p>\n<pre><code class=\"language-bash\">git config --global user.name \"Ad\u0131n\u0131z Soyad\u0131n\u0131z\"\ngit config --global user.email \"eposta@adresiniz.com\"<\/code><\/pre>\n<p>*   <code>--global<\/code> bayra\u011f\u0131, bu ayarlar\u0131n sisteminizdeki t\u00fcm Git depolar\u0131 i\u00e7in ge\u00e7erli olmas\u0131n\u0131 sa\u011flar.<br \/>\n*   <code>\"Ad\u0131n\u0131z Soyad\u0131n\u0131z\"<\/code> k\u0131sm\u0131n\u0131 kendi ad\u0131n\u0131z ve soyad\u0131n\u0131zla, <code>\"eposta@adresiniz.com\"<\/code> k\u0131sm\u0131n\u0131 ise kendi e-posta adresinizle de\u011fi\u015ftirin.<\/p>\n<p>Bu ayarlar\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git config --global user.name\ngit config --global user.email<\/code><\/pre>\n<h4>Varsay\u0131lan Edit\u00f6r Ayar\u0131<\/h4>\n<p>Git, taahh\u00fct mesajlar\u0131 gibi belirli durumlar i\u00e7in bir metin edit\u00f6r\u00fc kullan\u0131r. Varsay\u0131lan olarak, bu genellikle <code>vi<\/code> veya <code>vim<\/code>&#8216;dir. E\u011fer bu edit\u00f6rleri kullanmaya al\u0131\u015fk\u0131n de\u011filseniz, daha kullan\u0131c\u0131 dostu bir edit\u00f6r (\u00f6rne\u011fin <code>nano<\/code>) ayarlayabilirsiniz.<\/p>\n<p>Nano&#8217;yu varsay\u0131lan edit\u00f6r olarak ayarlamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git config --global core.editor \"nano\"<\/code><\/pre>\n<p>E\u011fer <code>vim<\/code> kullanmay\u0131 tercih ediyorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">git config --global core.editor \"vim\"<\/code><\/pre>\n<h4>Renk Ayarlar\u0131<\/h4>\n<p>Git, terminal \u00e7\u0131kt\u0131lar\u0131n\u0131n okunabilirli\u011fini art\u0131rmak i\u00e7in renkleri kullanabilir. Bu \u00f6zelli\u011fi etkinle\u015ftirmek veya de\u011fi\u015ftirmek i\u00e7in <code>color.ui<\/code> ayar\u0131n\u0131 kullanabilirsiniz. \u00c7o\u011fu durumda, otomatik renk alg\u0131lama yeterlidir.<\/p>\n<pre><code class=\"language-bash\">git config --global color.ui auto<\/code><\/pre>\n<p>Bu ayar, Git&#8217;in terminalin renkleri destekleyip desteklemedi\u011fini otomatik olarak alg\u0131lamas\u0131n\u0131 ve buna g\u00f6re \u00e7\u0131kt\u0131y\u0131 renklendirmesini sa\u011flar.<\/p>\n<h4>Alias Tan\u0131mlama (\u0130ste\u011fe Ba\u011fl\u0131 ama Faydal\u0131)<\/h4>\n<p>Git komutlar\u0131 bazen uzun olabilir. S\u0131k kulland\u0131\u011f\u0131n\u0131z komutlar i\u00e7in takma adlar (alias) tan\u0131mlayarak i\u015f ak\u0131\u015f\u0131n\u0131z\u0131 h\u0131zland\u0131rabilirsiniz. \u00d6rne\u011fin, <code>git status<\/code> yerine <code>git st<\/code> yazmak isteyebilirsiniz.<\/p>\n<p>Baz\u0131 pop\u00fcler alias \u00f6rnekleri:<\/p>\n<pre><code class=\"language-bash\">git config --global alias.st status\ngit config --global alias.co checkout\ngit config --global alias.br branch\ngit config --global alias.ci commit\ngit config --global alias.unstage 'reset HEAD --'\ngit config --global alias.last 'log -1 HEAD'<\/code><\/pre>\n<p>Bu alias&#8217;lar\u0131 ayarlad\u0131ktan sonra, <code>git status<\/code> yerine <code>git st<\/code>, <code>git commit<\/code> yerine <code>git ci<\/code> gibi k\u0131saltmalar\u0131 kullanabilirsiniz.<\/p>\n<p>T\u00fcm global ayarlar\u0131n\u0131z\u0131 g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git config --global --list<\/code><\/pre>\n<p>Bu komut, yap\u0131land\u0131rd\u0131\u011f\u0131n\u0131z t\u00fcm global ayarlar\u0131 listeleyecektir.<\/p>\n<h3>Git Kullan\u0131m\u0131na Giri\u015f (Temel Komutlar)<\/h3>\n<p>Git&#8217;i kurup yap\u0131land\u0131rd\u0131ktan sonra, temel Git komutlar\u0131n\u0131 \u00f6\u011frenmek, s\u00fcr\u00fcm kontrol\u00fcn\u00fc kullanmaya ba\u015flamak i\u00e7in ilk ad\u0131md\u0131r. Bu b\u00f6l\u00fcmde, bir projeyi ba\u015flatmak, de\u011fi\u015fiklikleri izlemek, taahh\u00fct etmek ve uzak depolarla etkile\u015fim kurmak i\u00e7in en s\u0131k kullan\u0131lan komutlar\u0131 ele alaca\u011f\u0131z.<\/p>\n<h4>Yeni Bir Depo Olu\u015fturma (<code>git init<\/code>)<\/h4>\n<p>Mevcut bir dizini Git deposu haline getirmek veya yeni bir proje i\u00e7in bir Git deposu ba\u015flatmak i\u00e7in <code>git init<\/code> komutu kullan\u0131l\u0131r. Bu komut, projenizin k\u00f6k dizininde <code>.git<\/code> ad\u0131nda gizli bir dizin olu\u015fturur. Bu dizin, projenin t\u00fcm s\u00fcr\u00fcm ge\u00e7mi\u015fini ve Git&#8217;in \u00e7al\u0131\u015fmas\u0131 i\u00e7in gerekli t\u00fcm meta verileri i\u00e7erir.<\/p>\n<pre><code class=\"language-bash\">mkdir my_git_project\ncd my_git_project\ngit init<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131: <code>Initialized empty Git repository in \/home\/user\/my_git_project\/.git\/<\/code><\/p>\n<h4>Dosyalar\u0131 \u0130zlemeye Alma (<code>git add<\/code>)<\/h4>\n<p>Bir depoya yeni dosyalar ekledi\u011finizde veya mevcut dosyalar\u0131 de\u011fi\u015ftirdi\u011finizde, Git&#8217;in bu de\u011fi\u015fiklikleri bir sonraki taahh\u00fctte dahil etmesi i\u00e7in onlar\u0131 &#8220;haz\u0131rlama alan\u0131na&#8221; (staging area) eklemeniz gerekir. Bu i\u015flem <code>git add<\/code> komutu ile yap\u0131l\u0131r.<\/p>\n<p>*   Tek bir dosyay\u0131 eklemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">touch index.html\n    git add index.html<\/code><\/pre>\n<p>*   Birden fazla dosyay\u0131 eklemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">touch style.css script.js\n    git add style.css script.js<\/code><\/pre>\n<p>*   T\u00fcm de\u011fi\u015fiklikleri eklemek i\u00e7in (dikkatli kullan\u0131lmal\u0131d\u0131r):<\/p>\n<pre><code class=\"language-bash\">git add .<\/code><\/pre>\n<h4>De\u011fi\u015fiklikleri Kaydetme (<code>git commit<\/code>)<\/h4>\n<p>Haz\u0131rlama alan\u0131na ekledi\u011finiz de\u011fi\u015fiklikleri projenizin ge\u00e7mi\u015fine kal\u0131c\u0131 olarak kaydetmek i\u00e7in <code>git commit<\/code> komutu kullan\u0131l\u0131r. Her taahh\u00fct, bir mesajla birlikte gelir ve bu mesaj, o taahh\u00fctte yap\u0131lan de\u011fi\u015fiklikleri a\u00e7\u0131klar. \u0130yi yaz\u0131lm\u0131\u015f taahh\u00fct mesajlar\u0131, projenin ge\u00e7mi\u015fini anlamak i\u00e7in \u00e7ok \u00f6nemlidir.<\/p>\n<pre><code class=\"language-bash\">git commit -m \"\u0130lk commit: index.html dosyas\u0131n\u0131 ekle\"<\/code><\/pre>\n<p>*   <code>-m<\/code> bayra\u011f\u0131, taahh\u00fct mesaj\u0131n\u0131 do\u011frudan komut sat\u0131r\u0131nda belirtmenizi sa\u011flar. E\u011fer <code>-m<\/code> kullanmazsan\u0131z, Git varsay\u0131lan edit\u00f6r\u00fcn\u00fcz\u00fc a\u00e7ar ve mesaj\u0131 orada yazman\u0131z\u0131 bekler.<\/p>\n<h4>Depo Durumunu Kontrol Etme (<code>git status<\/code>)<\/h4>\n<p><code>git status<\/code> komutu, \u00e7al\u0131\u015fma dizininizin ve haz\u0131rlama alan\u0131n\u0131z\u0131n g\u00fcncel durumunu g\u00f6sterir. Hangi dosyalar\u0131n de\u011fi\u015ftirildi\u011fini, hangilerinin haz\u0131rlanmaya bekledi\u011fini ve hangilerinin hen\u00fcz Git taraf\u0131ndan izlenmedi\u011fini g\u00f6rmenizi sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">git status<\/code><\/pre>\n<p>\u00d6rnek \u00e7\u0131kt\u0131:<\/p>\n<pre><code class=\"language-\">On branch master\nNo commits yet\nChanges to be committed:\n  (use \"git rm --cached <file>...\" to unstage)\n        new file:   index.html<\/code><\/pre>\n<h4>De\u011fi\u015fiklikleri G\u00f6rme (<code>git diff<\/code>)<\/h4>\n<p><code>git diff<\/code> komutu, \u00e7al\u0131\u015fma dizininizdeki de\u011fi\u015fiklikler ile son taahh\u00fct aras\u0131ndaki farklar\u0131 veya haz\u0131rlama alan\u0131ndaki de\u011fi\u015fiklikleri g\u00f6rmenizi sa\u011flar.<\/p>\n<p>*   \u00c7al\u0131\u015fma dizini ile haz\u0131rlama alan\u0131 aras\u0131ndaki farklar\u0131 g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git diff<\/code><\/pre>\n<p>*   Haz\u0131rlama alan\u0131 ile son taahh\u00fct aras\u0131ndaki farklar\u0131 g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git diff --staged<\/code><\/pre>\n<h4>Uzak Depo Ekleme (<code>git remote add origin<\/code>)<\/h4>\n<p>\u00c7o\u011fu zaman, yerel deponuzu GitHub, GitLab veya Bitbucket gibi uzak bir depoyla senkronize etmek istersiniz. Uzak bir depo eklemek i\u00e7in <code>git remote add<\/code> komutunu kullan\u0131r\u0131z. Genellikle uzak deponun ad\u0131 <code>origin<\/code> olarak belirlenir.<\/p>\n<pre><code class=\"language-bash\">git remote add origin https:\/\/github.com\/kullaniciadi\/depoadi.git<\/code><\/pre>\n<p><code>https:\/\/github.com\/kullaniciadi\/depoadi.git<\/code> k\u0131sm\u0131n\u0131 kendi uzak deponuzun URL&#8217;si ile de\u011fi\u015ftirin.<\/p>\n<h4>De\u011fi\u015fiklikleri Uzak Depoya G\u00f6nderme (<code>git push<\/code>)<\/h4>\n<p>Yerel deponuzdaki taahh\u00fctleri uzak depoya g\u00f6ndermek i\u00e7in <code>git push<\/code> komutu kullan\u0131l\u0131r. Bu, di\u011fer ekip \u00fcyelerinin de\u011fi\u015fikliklerinizi g\u00f6rmesini ve eri\u015fmesini sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">git push -u origin master<\/code><\/pre>\n<p>*   <code>-u<\/code> veya <code>--set-upstream<\/code> bayra\u011f\u0131, <code>origin<\/code> uzak deposunun <code>master<\/code> (veya ana) dal\u0131n\u0131 izlemesini sa\u011flar. Bu, sonraki <code>git push<\/code> ve <code>git pull<\/code> komutlar\u0131nda <code>origin master<\/code> belirtmenize gerek kalmadan \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. \u0130lk push&#8217;tan sonra sadece <code>git push<\/code> yazman\u0131z yeterli olacakt\u0131r.<\/p>\n<h4>De\u011fi\u015fiklikleri Uzak Depodan \u00c7ekme (<code>git pull<\/code>)<\/h4>\n<p>Uzak depodaki de\u011fi\u015fiklikleri yerel deponuza indirmek ve birle\u015ftirmek i\u00e7in <code>git pull<\/code> komutu kullan\u0131l\u0131r. Bu, di\u011fer geli\u015ftiricilerin yapt\u0131\u011f\u0131 g\u00fcncellemeleri kendi projenize entegre etmenizi sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">git pull origin master<\/code><\/pre>\n<p>E\u011fer <code>-u<\/code> bayra\u011f\u0131 ile bir upstream dal\u0131 ayarlad\u0131ysan\u0131z, sadece <code>git pull<\/code> yazman\u0131z yeterlidir.<\/p>\n<h4>Klonlama (<code>git clone<\/code>)<\/h4>\n<p>Mevcut bir uzak depoyu yerel sisteminize kopyalamak i\u00e7in <code>git clone<\/code> komutu kullan\u0131l\u0131r. Bu, yeni bir projeye ba\u015flarken veya mevcut bir projeye kat\u0131l\u0131rken en yayg\u0131n ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">git clone https:\/\/github.com\/kullaniciadi\/depoadi.git<\/code><\/pre>\n<p>Bu komut, uzak depoyu <code>depoadi<\/code> ad\u0131nda yeni bir dizine kopyalayacakt\u0131r.<\/p>\n<h3>Git G\u00fcncelleme ve Kald\u0131rma<\/h3>\n<p>Git&#8217;in zaman zaman g\u00fcncellenmesi, yeni \u00f6zelliklerden faydalanmak ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapatmak i\u00e7in \u00f6nemlidir. Ayr\u0131ca, Git&#8217;i art\u0131k kullanm\u0131yorsan\u0131z veya farkl\u0131 bir s\u00fcr\u00fcm\u00fcn\u00fc kurmak istiyorsan\u0131z, mevcut kurulumu kald\u0131rman\u0131z gerekebilir.<\/p>\n<h4>APT ile G\u00fcncelleme<\/h4>\n<p>E\u011fer Git&#8217;i APT paket y\u00f6neticisi ile kurduysan\u0131z, g\u00fcncelleme i\u015flemi olduk\u00e7a basittir. Sisteminizdeki di\u011fer t\u00fcm paketlerle birlikte Git&#8217;i de g\u00fcncelleyebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade git<\/code><\/pre>\n<p>*   <code>sudo apt update<\/code>: Paket listelerini g\u00fcnceller.<br \/>\n*   <code>sudo apt upgrade git<\/code>: Sadece <code>git<\/code> paketini en son s\u00fcr\u00fcm\u00fcne y\u00fckseltir. E\u011fer t\u00fcm sistemi y\u00fckseltmek isterseniz <code>sudo apt upgrade<\/code> kullanabilirsiniz.<\/p>\n<p>Bu komutlar, Ubuntu&#8217;nun resmi depolar\u0131nda bulunan en son Git s\u00fcr\u00fcm\u00fcne y\u00fckseltme yapacakt\u0131r.<\/p>\n<h4>Kaynak Koddan G\u00fcncelleme<\/h4>\n<p>Kaynak koddan kurulan Git&#8217;i g\u00fcncellemek, asl\u0131nda yeni bir s\u00fcr\u00fcm\u00fc indirip tekrar derlemek ve y\u00fcklemek anlam\u0131na gelir.<\/p>\n<p>1.  <strong>En Son Kaynak Kodu \u0130ndirme:<\/strong> Git&#8217;in resmi GitHub sayfas\u0131ndan (github.com\/git\/git\/releases) en son s\u00fcr\u00fcm\u00fcn tarball&#8217;\u0131n\u0131 indirin.<\/p>\n<pre><code class=\"language-bash\">cd \/tmp\n    wget https:\/\/github.com\/git\/git\/archive\/refs\/tags\/vX.Y.Z.tar.gz -O git.tar.gz\n    tar -xf git.tar.gz\n    cd git-X.Y.Z # \u0130ndirdi\u011finiz s\u00fcr\u00fcme g\u00f6re dizin ad\u0131 de\u011fi\u015fecektir<\/code><\/pre>\n<p>    (X.Y.Z&#8217;yi g\u00fcncel s\u00fcr\u00fcm numaras\u0131yla de\u011fi\u015ftirin.)<\/p>\n<p>2.  <strong>Derleme ve Y\u00fckleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">make prefix=\/usr\/local all\n    sudo make prefix=\/usr\/local install<\/code><\/pre>\n<p>    Bu komutlar, mevcut Git kurulumunuzun \u00fczerine yeni s\u00fcr\u00fcm\u00fc yazacakt\u0131r.<\/p>\n<p>3.  <strong>Do\u011frulama:<\/strong><\/p>\n<pre><code class=\"language-bash\">git --version<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131da yeni s\u00fcr\u00fcm numaras\u0131n\u0131n g\u00f6r\u00fcnd\u00fc\u011f\u00fcnden emin olun.<\/p>\n<h4>APT ile Kald\u0131rma<\/h4>\n<p>E\u011fer Git&#8217;i APT ile kurduysan\u0131z ve sisteminizden tamamen kald\u0131rmak istiyorsan\u0131z, a\u015fa\u011f\u0131daki komutlar\u0131 kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt purge git\nsudo apt autoremove<\/code><\/pre>\n<p>*   <code>sudo apt purge git<\/code>: Git paketini ve onunla ili\u015fkili t\u00fcm yap\u0131land\u0131rma dosyalar\u0131n\u0131 kald\u0131r\u0131r.<br \/>\n*   <code>sudo apt autoremove<\/code>: Art\u0131k hi\u00e7bir paket taraf\u0131ndan kullan\u0131lmayan ba\u011f\u0131ml\u0131l\u0131klar\u0131 temizler.<\/p>\n<h4>Kaynak Koddan Kurulan Git&#8217;i Kald\u0131rma<\/h4>\n<p>Kaynak koddan kurulan Git&#8217;i kald\u0131rmak biraz daha karma\u015f\u0131k olabilir, \u00e7\u00fcnk\u00fc APT gibi bir paket y\u00f6neticisi taraf\u0131ndan izlenmez. Genellikle, derleme dizininde bulunan <code>uninstall<\/code> hedefi kullan\u0131l\u0131r.<\/p>\n<p>1.  <strong>Kurulum Dizinine Gitme:<\/strong> Git&#8217;i derledi\u011finiz ve y\u00fckledi\u011finiz kaynak kod dizinine gidin (\u00f6rne\u011fin <code>\/tmp\/git-X.Y.Z<\/code>).<\/p>\n<p>2.  <strong>Kald\u0131rma:<\/strong><\/p>\n<pre><code class=\"language-bash\">cd \/tmp\/git-X.Y.Z # Git'i kurdu\u011funuz dizin\n    sudo make prefix=\/usr\/local uninstall<\/code><\/pre>\n<p>    Bu komut, Git&#8217;in <code>\/usr\/local<\/code> dizinine y\u00fckledi\u011fi dosyalar\u0131 kald\u0131r\u0131r. E\u011fer kaynak kod dizinini sildiyseniz, bu y\u00f6ntemi kullanamazs\u0131n\u0131z. Bu durumda, Git&#8217;in manuel olarak kuruldu\u011fu yerleri (genellikle <code>\/usr\/local\/bin<\/code>, <code>\/usr\/local\/share\/man<\/code>, <code>\/usr\/local\/etc<\/code>) elle temizlemeniz gerekebilir. Ancak bu, dikkatli yap\u0131lmas\u0131 gereken ve potansiyel olarak riskli bir i\u015flemdir.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<p>Git kurulumu ve ilk kullan\u0131m\u0131yla ilgili s\u0131k\u00e7a kar\u015f\u0131la\u015f\u0131lan baz\u0131 sorular\u0131 bu b\u00f6l\u00fcmde yan\u0131tlayaca\u011f\u0131z.<\/p>\n<h4>Ubuntu 18.04&#8217;te neden eski bir Git s\u00fcr\u00fcm\u00fc geliyor?<\/h4>\n<p>Ubuntu&#8217;nun LTS (Uzun S\u00fcreli Destek) s\u00fcr\u00fcmleri, kararl\u0131l\u0131k ve g\u00fcvenilirli\u011fi \u00f6n planda tutar. Bu nedenle, genellikle yeni \u00e7\u0131kan yaz\u0131l\u0131m s\u00fcr\u00fcmlerini hemen depolar\u0131na eklemek yerine, kapsaml\u0131 testlerden ge\u00e7mi\u015f ve kararl\u0131 oldu\u011fu kan\u0131tlanm\u0131\u015f s\u00fcr\u00fcmleri tercih ederler. Ubuntu 18.04&#8217;\u00fcn yay\u0131nland\u0131\u011f\u0131 tarihte (Nisan 2018) g\u00fcncel olan Git s\u00fcr\u00fcm\u00fc 2.17.x idi ve bu s\u00fcr\u00fcm, da\u011f\u0131t\u0131m\u0131n ya\u015fam d\u00f6ng\u00fcs\u00fc boyunca desteklenmeye devam etti. En son s\u00fcr\u00fcmleri isteyen kullan\u0131c\u0131lar i\u00e7in kaynak koddan kurulum se\u00e7ene\u011fi mevcuttur.<\/p>\n<h4>Hangi kurulum y\u00f6ntemi daha iyi?<\/h4>\n<p>*   <strong>APT ile Kurulum:<\/strong> \u00c7o\u011fu kullan\u0131c\u0131 i\u00e7in \u00f6nerilen y\u00f6ntemdir. Basit, h\u0131zl\u0131, g\u00fcvenlidir ve ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi otomatiktir. E\u011fer Git&#8217;in en son \u00f6zelliklerine an\u0131nda ihtiyac\u0131n\u0131z yoksa, bu y\u00f6ntem idealdir.<br \/>\n*   <strong>Kaynak Koddan Kurulum:<\/strong> Git&#8217;in en yeni \u00f6zelliklerine, hata d\u00fczeltmelerine veya geli\u015ftirme s\u00fcr\u00fcmlerine ihtiyac\u0131n\u0131z varsa tercih edilir. Ancak, daha fazla manuel ad\u0131m gerektirir ve ba\u011f\u0131ml\u0131l\u0131klar\u0131 sizin y\u00f6netmeniz gerekir. Ayr\u0131ca, bu \u015fekilde kurulan yaz\u0131l\u0131mlar APT taraf\u0131ndan otomatik olarak g\u00fcncellenmez.<\/p>\n<h4>Git kurulumundan sonra ne yapmal\u0131y\u0131m?<\/h4>\n<p>Git&#8217;i kurduktan sonra yapman\u0131z gereken ilk \u015fey, kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve e-posta adresinizi yap\u0131land\u0131rmakt\u0131r:<\/p>\n<pre><code class=\"language-bash\">git config --global user.name \"Ad\u0131n\u0131z Soyad\u0131n\u0131z\"\ngit config --global user.email \"eposta@adresiniz.com\"<\/code><\/pre>\n<p>Ard\u0131ndan, ilk projenizi ba\u015flatabilir veya mevcut bir depoyu klonlayarak Git kullanmaya ba\u015flayabilirsiniz.<\/p>\n<h4>SSH anahtarlar\u0131 nas\u0131l olu\u015fturulur ve Git ile kullan\u0131l\u0131r?<\/h4>\n<p>Uzak Git depolar\u0131yla (GitHub, GitLab gibi) g\u00fcvenli bir \u015fekilde etkile\u015fim kurmak i\u00e7in SSH anahtarlar\u0131 kullanmak yayg\u0131n ve \u00f6nerilen bir y\u00f6ntemdir.<\/p>\n<p>1.  <strong>SSH anahtar\u0131 olu\u015fturma:<\/strong><\/p>\n<pre><code class=\"language-bash\">ssh-keygen -t rsa -b 4096 -C \"eposta@adresiniz.com\"<\/code><\/pre>\n<p>    Bu komut, <code>.ssh<\/code> dizininizde <code>id_rsa<\/code> (\u00f6zel anahtar) ve <code>id_rsa.pub<\/code> (genel anahtar) dosyalar\u0131n\u0131 olu\u015fturacakt\u0131r. Parola (passphrase) belirlemeniz \u00f6nerilir.<\/p>\n<p>2.  <strong>SSH agent&#8217;\u0131 ba\u015flatma:<\/strong><\/p>\n<pre><code class=\"language-bash\">eval \"$(ssh-agent -s)\"\n    ssh-add ~\/.ssh\/id_rsa<\/code><\/pre>\n<p>    Bu komutlar, SSH anahtar\u0131n\u0131z\u0131 SSH agent&#8217;a ekler, b\u00f6ylece her ba\u011flant\u0131da parola sorman\u0131za gerek kalmaz.<\/p>\n<p>3.  <strong>Genel anahtar\u0131 uzak depoya ekleme:<\/strong> <code>~\/.ssh\/id_rsa.pub<\/code> dosyas\u0131n\u0131n i\u00e7eri\u011fini kopyalay\u0131n ve GitHub\/GitLab\/Bitbucket gibi hizmetlerin ayarlar\u0131nda &#8220;SSH and GPG keys&#8221; b\u00f6l\u00fcm\u00fcne yap\u0131\u015ft\u0131r\u0131n.<\/p>\n<p>4.  <strong>Uzak depoyu SSH ile klonlama:<\/strong> Art\u0131k HTTPS yerine SSH URL&#8217;lerini kullanarak depolar\u0131 klonlayabilirsiniz, \u00f6rne\u011fin:<\/p>\n<pre><code class=\"language-bash\">git clone git@github.com:kullaniciadi\/depoadi.git<\/code><\/pre>\n<h4>Birden fazla Git s\u00fcr\u00fcm\u00fcn\u00fc ayn\u0131 anda kullanabilir miyim?<\/h4>\n<p>Evet, m\u00fcmk\u00fcnd\u00fcr ancak dikkatli olunmas\u0131 gerekir. Kaynak koddan Git&#8217;i <code>\/usr\/local<\/code> gibi farkl\u0131 bir \u00f6neke kurarak ve PATH de\u011fi\u015fkeninizi buna g\u00f6re yap\u0131land\u0131rarak bunu yapabilirsiniz. PATH&#8217;inizde hangi dizinin daha \u00f6nce listelendi\u011fi, hangi Git s\u00fcr\u00fcm\u00fcn\u00fcn varsay\u0131lan olarak kullan\u0131laca\u011f\u0131n\u0131 belirler. \u00d6rne\u011fin, <code>\/usr\/local\/bin<\/code> dizini <code>\/usr\/bin<\/code>&#8216;den \u00f6nce geliyorsa, kaynak koddan kurdu\u011funuz s\u00fcr\u00fcm kullan\u0131lacakt\u0131r. Ancak, bu t\u00fcr kurulumlar karma\u015f\u0131kl\u0131\u011f\u0131 art\u0131rabilir ve \u00f6zellikle yeni ba\u015flayanlar i\u00e7in \u00f6nerilmez. Genellikle tek bir Git s\u00fcr\u00fcm\u00fcne ba\u011fl\u0131 kalmak en iyisidir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu kapsaml\u0131 rehberde, Git&#8217;in ne oldu\u011funu, neden \u00f6nemli oldu\u011funu ve Ubuntu 18.04 i\u015fletim sistemine nas\u0131l kurulaca\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde inceledik. \u0130ster APT paket y\u00f6neticisinin sundu\u011fu kararl\u0131 s\u00fcr\u00fcm\u00fc tercih edin, ister kaynak koddan derleyerek en g\u00fcncel \u00f6zelliklere eri\u015fmeyi isteyin, her iki y\u00f6ntem i\u00e7in de ad\u0131m ad\u0131m talimatlar\u0131 ve gerekli \u00f6n haz\u0131rl\u0131klar\u0131 sunduk.<\/p>\n<h4>\u00d6zet<\/h4>\n<p>*   <strong>\u00d6n Haz\u0131rl\u0131klar:<\/strong> Sistem g\u00fcncellemesi ve gerekli ba\u011f\u0131ml\u0131l\u0131klar\u0131n kurulumu, sorunsuz bir kurulum i\u00e7in kritik ad\u0131mlard\u0131r.<br \/>\n*   <strong>APT ile Kurulum:<\/strong> \u00c7o\u011fu kullan\u0131c\u0131 i\u00e7in \u00f6nerilen, kolay ve g\u00fcvenilir y\u00f6ntemdir. <code>sudo apt install git<\/code> komutuyla h\u0131zl\u0131ca kurulabilir.<br \/>\n*   <strong>Kaynak Koddan Kurulum:<\/strong> En g\u00fcncel Git s\u00fcr\u00fcm\u00fcne veya belirli \u00f6zelle\u015ftirmelere ihtiya\u00e7 duyan ileri d\u00fczey kullan\u0131c\u0131lar i\u00e7in uygundur. Derleme ba\u011f\u0131ml\u0131l\u0131klar\u0131 ve manuel ad\u0131mlar gerektirir.<br \/>\n*   <strong>Do\u011frulama:<\/strong> <code>git --version<\/code> komutu ile kurulumun ba\u015far\u0131l\u0131 oldu\u011funu teyit etmek \u00f6nemlidir.<br \/>\n*   <strong>Yap\u0131land\u0131rma:<\/strong> <code>git config<\/code> komutlar\u0131 ile kullan\u0131c\u0131 ad\u0131, e-posta ve varsay\u0131lan edit\u00f6r gibi temel ayarlar\u0131 yapmak, Git kullan\u0131m\u0131na ba\u015flamadan \u00f6nce zorunludur.<br \/>\n*   <strong>Temel Kullan\u0131m:<\/strong> <code>git init<\/code>, <code>git add<\/code>, <code>git commit<\/code>, <code>git push<\/code>, <code>git pull<\/code> ve <code>git clone<\/code> gibi temel komutlar, s\u00fcr\u00fcm kontrol s\u00fcre\u00e7lerinin temelini olu\u015fturur.<br \/>\n*   <strong>G\u00fcncelleme ve Kald\u0131rma:<\/strong> Hem APT hem de kaynak koddan kurulum i\u00e7in Git&#8217;i g\u00fcncelleme ve kald\u0131rma y\u00f6ntemleri a\u00e7\u0131klanm\u0131\u015ft\u0131r.<br \/>\n*   <strong>SSS:<\/strong> S\u0131k kar\u015f\u0131la\u015f\u0131lan sorulara yan\u0131tlar verilerek kullan\u0131c\u0131lar\u0131n olas\u0131 sorunlar\u0131 \u00e7\u00f6zmelerine yard\u0131mc\u0131 olunmu\u015ftur.<\/p>\n<h4>Sonraki Ad\u0131mlar ve Kaynaklar<\/h4>\n<p>Git&#8217;i ba\u015far\u0131yla kurdu\u011funuza ve temel komutlar\u0131 \u00f6\u011frendi\u011finize g\u00f6re, \u015fimdi Git&#8217;in sundu\u011fu t\u00fcm olanaklar\u0131 ke\u015ffetmeye ba\u015flayabilirsiniz. \u0130\u015fte size yard\u0131mc\u0131 olabilecek baz\u0131 sonraki ad\u0131mlar ve kaynaklar:<\/p>\n<p>*   <strong>Git Belgeleri:<\/strong> Git&#8217;in resmi belgeleri (git-scm.com\/doc), komutlar\u0131n derinlemesine a\u00e7\u0131klamalar\u0131n\u0131 ve ileri d\u00fczey konular\u0131 i\u00e7erir.<br \/>\n*   <strong>Git Kitab\u0131:<\/strong> Pro Git kitab\u0131 (git-scm.com\/book\/tr\/v2), Git hakk\u0131nda kapsaml\u0131 ve \u00fccretsiz bir kaynakt\u0131r. Ba\u015flang\u0131\u00e7 seviyesinden ileri seviyeye kadar her \u015feyi kapsar.<br \/>\n*   <strong>GitHub\/GitLab\/Bitbucket:<\/strong> Bu platformlarda hesap olu\u015fturarak projelerinizi bar\u0131nd\u0131rabilir, a\u00e7\u0131k kaynak projelere katk\u0131da bulunabilir ve ekip \u00fcyeleriyle i\u015fbirli\u011fi yapabilirsiniz.<br \/>\n*   <strong>Pratik Yap\u0131n:<\/strong> Kendi k\u00fc\u00e7\u00fck projelerinizi ba\u015flat\u0131n, de\u011fi\u015fiklikler yap\u0131n, taahh\u00fct edin, dallar olu\u015fturun ve birle\u015ftirin. Pratik yapmak, Git&#8217;i \u00f6\u011frenmenin en iyi yoludur.<\/p>\n<p>Git, modern yaz\u0131l\u0131m geli\u015ftirmenin vazge\u00e7ilmez bir par\u00e7as\u0131d\u0131r. Bu rehber sayesinde Ubuntu 18.04 sisteminizde Git&#8217;i g\u00fcvenle kurup yap\u0131land\u0131rarak geli\u015ftirme yolculu\u011funuzda \u00f6nemli bir ad\u0131m att\u0131n\u0131z. Ba\u015far\u0131lar dileriz!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Git&#8217;i Ubuntu 18. 04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi Giri\u015f: Git ve Neden \u00d6nemli?","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-40852","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>Git&#039;i Ubuntu 18.04&#039;e Y\u00fckleme Kapsaml\u0131 Rehberi - 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\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Git&#039;i Ubuntu 18.04&#039;e Y\u00fckleme Kapsaml\u0131 Rehberi\" \/>\n<meta property=\"og:description\" content=\"Git&#039;i Ubuntu 18. 04&#039;e Y\u00fckleme Kapsaml\u0131 Rehberi Giri\u015f: Git ve Neden \u00d6nemli?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-01T16:40:56+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=\"26 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi\",\"datePublished\":\"2026-03-01T16:40:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\"},\"wordCount\":4612,\"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\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\",\"name\":\"Git'i Ubuntu 18.04'e Y\u00fckleme Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-03-01T16:40:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi\"}]},{\"@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'i Ubuntu 18.04'e Y\u00fckleme Kapsaml\u0131 Rehberi - 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\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"Git'i Ubuntu 18.04'e Y\u00fckleme Kapsaml\u0131 Rehberi","og_description":"Git'i Ubuntu 18. 04'e Y\u00fckleme Kapsaml\u0131 Rehberi Giri\u015f: Git ve Neden \u00d6nemli?","og_url":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-03-01T16:40:56+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"26 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi","datePublished":"2026-03-01T16:40:56+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/"},"wordCount":4612,"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\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/","name":"Git'i Ubuntu 18.04'e Y\u00fckleme Kapsaml\u0131 Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-03-01T16:40:56+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/giti-ubuntu-18-04e-yukleme-kapsamli-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Git&#8217;i Ubuntu 18.04&#8217;e Y\u00fckleme Kapsaml\u0131 Rehberi"}]},{"@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\/40852","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=40852"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/40852\/revisions"}],"predecessor-version":[{"id":40853,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/40852\/revisions\/40853"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=40852"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=40852"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=40852"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}