Düzenle

Aracılığıyla paylaş


Sık Sorulan Git Soruları

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Uzak bir dalı yerel depoma nasıl kolayca indirebilirim?

İlk olarak, yapılandırılmış bir origin deponuz olduğundan emin olun. Deponuzu kopyaladıysanız git cloneböyle bir deponuz olmalıdır. Yerel olarak mevcut olmayan bir dalı kullanıma aldığınızda, Git aynı ada sahip uzak bir dal olup olmadığını belirler. Varsa Git, bu adın uzak dalını içeren bir yerel dal oluşturur. İşlemeleri indirmek ve Git'in dal geçmişini yerel olarak yakalamasını sağlamak için kullanın git pull .

Hangi dalda çalıştığımı nasıl öğrenebilirim?

git branch bağımsız değişken olmadan yerel dalları gösterir ve kullanıma aldıklarını vurgular. Visual Studio'da, yerel Git deposunda depolanan bir projeyle çalışırken durum çubuğu da geçerli dalı görüntüler.

Git işlemelerini ne zaman yapmalıyım?

Kabul edilen uygulama, mantıksal olarak ayrı değişiklikler için ayrı işlemeler yapmaktır. İşlemeleri bir logbook'taki girdiler olarak düşünün. Dikkate değer bir değişiklik yaptığınızda, bunu bir işlemeye kaydedin. Popüler bir seçenek, herkesin istediği kadar yerel olarak işlemesine izin vermektir, ancak yerel işlemeleri göndermeden önce yeniden boyutlandırma yoluyla bunları sıkıştırırlar. Bu seçenek kullanıcılara sık işleme yapma esnekliği sağlarken işleme geçmişinin kolay olmasını sağlar.

Her dal tam işleme geçmişini koruyorsa, bu *main* işleme geçmişinin zaman içinde takip etmesini zorlaştırmıyor mu?

Çok sayıda işlemeye ve katkıda bulunanlara sahip büyük projeler, genel projenin geliştirme geçmişinden daha fazlasıyla birleştirilmiş main konu dallarının geliştirme geçmişini temsil eden dal için main işleme geçmişlerine neden olabilir. Git, işlemeleri sıkıştırma ve yeniden bağlama yoluyla dallardaki işlemeleri daraltmaya yönelik bir tesis sağlar. İşlemeleri sıkıştırdığınızda, bir daldaki işleme geçmişi daha az ayrıntılı hale gelir ve bu da birleştirildikten sonra ana dalda daha basit bir işleme geçmişi olmasını sağlar.

Bir dosyada belirli bir değişikliği kimin yaptığını nasıl öğrenebilirim?

Bir dosyada git blame belirli bir değişikliği kimin yaptığını bulmak için komutunu kullanın. Yerel deponuzdan, hangi ilgi alanı satırlarını belirterek parametresiyle -L çalıştırabilirsinizgit blame. Blame , satırı son güncelleştiren işlemeyi ve işlemeyi yapan kişinin adını gösteren biçimlendirilmiş çıkış oluşturur.

> git blame foo.js -L 20,+40  # show the blame output for the next 40 lines starting at line 20

215d1108 (Francis Totten 2015-11-21 09:54:23 -0800 20) line 20 of the code
215d1108 (Francis Totten 2015-11-21 09:54:23 -0800 21) line 21 of the code
215d1108 (Francis Totten 2015-11-21 09:54:23 -0800 22) line 22 of the code

Blame işleme geçmişini sizin için arar. Ayrıca, kimin ne zaman ve ne zaman değişiklik yaptığını belirlemek için web portalında bir dosyanın geçmişini de gözden geçirebilirsiniz. Deponuz ve dalınız için Kod Gezgini'ni açın ve ilgilendiğiniz dosyayı seçin. Azure Repos, geçerli dalda bu dosya için eksiksiz bir işleme geçmişi gösterir.

Bazı dosyalarda değişiklik yaptım ve şimdi farklı bir dala göz atamıyorum veya çalışmamı yeniden temel alamıyorum.

Git'te farklı bir dalda kullanıma almak, dosya sisteminizdeki dosyaların durumunu etkiler. Git, dalınızın durumunu temsil eden dosyalarla çalıştığından emin olmak için işleme geçmişini kullanır. Kaydedilmemiş değişiklikleriniz varken dalları değiştirmeye çalışırsanız, kullanıma alma sırasında bu değişikliklerin üzerine yazılır. Git değişikliklerinizi yanlışlıkla kaybetmenizi istemediği için ödeme işleminin gerçekleşmesini engeller. İki seçeneğiniz vardır:

Biraz çalıştım ama başka bir şeye geçmem gerekiyor. Değişiklikleri işlemeden daha sonra çalışmamı nasıl kaydedebilirim?

Bazen değişiklikleri saklamak istersiniz, ancak bunları işlemek istemezsiniz çünkü bu değişiklikleri rahatça yaptığınız bir noktada değildir. Git stashkullanın. Stash, dalınızdaki geçerli hazırlanmış ve kalıcı olmayan değişiklikleri alır ve işi kaydeder, sonra dalınızı son işlemenin durumuna geri döndürür. Diğer dala geçiş yapabilir, işinizi yapabilir, sonra değişikliklerinizi geri yüklemek için bu dala döndüğünüzde komutunu çalıştırabilirsiniz stash apply .

> git stash
Saved working directory and index state WIP on feature1: be26067 updated endpoint docs
HEAD is now at be26067

komutunu çalıştırdığınızda git stash apply, en son zulalanmış değişiklikler geçerli dalınıza uygulanır. Zulalanmış değişiklikler uygulanırken bir çakışma varsa, stash çakışmayan dosyalar için değişiklikleri geri yükler ve çözmeniz için çakışan dosyalarda çakışma işaretleyicileri oluşturur. Bu durumda değişiklikleri el ile birleştirmeniz gerekir.

Zulayla işiniz bittiğinde, bu komutla git stash drop silin. Bu komut, son zulalanmış değişiklik kümesini kaldırır.

Birden çok zulanız olabilir, ancak bunu yapmak için açıkça uygulamanız ve bırakmanız gerekeceğinden daha el ile işleme gerekir. Git Stash belgelerinden daha fazla bilgi edinin.

Git komut satırı araçları için varsayılan düzenleyiciyi nasıl değiştirebilirim?

Varsayılan olarak, komut satırı Git işleme iletilerini isterken, yeniden temeller gerçekleştirirken ve tamamlanması için ek bilgi gerektiren diğer işleri yaparken bir komut satırı düzenleyicisi kullanır. Varsayılan düzenleyici kullanılarak git configyapılandırılır:

> git config core.editor _path_to_editor_ _options_to_editor_

Windows için Git, not defterini düzenleyici olarak ayarlamayı kolaylaştırır:

> git config core.editor notepad

Bu komut, Windows Not Defteri'ı Git bilgilerini gerektiği gibi düzenleyip metni Git'ten Not Defteri doğru şekilde geçirecek şekilde yapılandırıyor. Ayrıca şunları da belirtebilirsiniz:

> git config format.commitMessageColumns 72 

İşleme iletilerindeki metin sütunlarını tercih edilen 72'de tutmak için ve satırda bu karakter sınırına ulaştıktan sonra satır kaydırma.

İşlemelerimde görüntülenen kullanıcı adını ve e-postayı nasıl değiştirebilirim?

Git her işlemenin içine bir kullanıcı adı ve e-posta adresi bilgileri yerleştirir ve Azure Repos bu bilgileri işlemeleri görüntülerken ve çekme istekleriyle çalışırken kullanır. Komut satırında çalışıyorsanız, komutunu kullanarak git config görüntülenen ad ve e-posta bilgilerini güncelleştirebilirsiniz:

> git config --global user.email "frank@fabrikam.com"
> git config --global user.name "Francis Totten"

seçeneği, --global bu sistemdeki tüm Git depoları için işlemelere dahil edilen e-postayı ve adı ayarlar. Tek bir deponun ayarlarını değiştirmek istiyorsanız Git deposunun bulunduğu dizine geçmelisiniz ve yukarıdaki komutları bayrağı olmadan --global çalıştırmanız gerekir.

Visual Studio'dan ad ve e-posta ayarlarını da değiştirebilirsiniz. Git menüsünden Ayarlar'iseçin Seçenekler iletişim kutusunda Git Genel Ayarlar veya Git Deposu Ayarlar> Genel'i seçin.

Visual Studio 2019 sürüm 16.8 ve sonraki sürümleri, Takım Gezgini Git kullanıcı arabirimini korurken bir Git sürüm denetimi deneyimi sağlar. Takım Gezgini'ni kullanmak için, menü çubuğundan Araçlar>Seçenekler>Önizleme Özellikleri>Yeni Git kullanıcı deneyimi'nin işaretini kaldırın. Git özelliklerini her iki arabirimden de birbirinin yerine kullanabilirsiniz.

Ekip Gezgini'nde Ayarlar'ı seçin ve Git'in altında Genel Ayarlar veya Depo Ayarlar bağlantısını seçin.