Git Push
Son güncelleme
git push, yerel dalınızdaki commit'leri uzak karşılığına (GitHub gibi) yükler. Bir dalın upstream'i ayarlandıktan sonra düz bir git push yeterlidir; yeni bir dalın ilk push'u, uzak dalı oluşturmak ve izlemeyi kurmak için -u kullanır, böylece sonraki push ve pull işlemleri argüman gerektirmez.
Bunları terminal playground'da deneyin - tarayıcınızda gerçek bir kabuk, kurulacak hiçbir şey yok.
Sözdizimi
| Command | What it does |
|---|---|
git push | Geçerli dalı upstream'ine gönderir |
git push -u origin feature | Yeni bir dal gönderir ve upstream ayarlar |
git push origin main | Belirli bir uzağa ve dala gönderir |
git push --tags | Tüm yerel etiketleri gönderir |
git push --force-with-lease | Rebase sonrası güvenli force push |
Yaygın durumlar
| Goal | Command |
|---|---|
| Tamamen yeni bir dal gönderme | git push -u origin feature |
| Upstream ayarlandıktan sonra gönderme | git push |
| Tek bir etiket gönderme | git push origin v1.0.0 |
| Uzak bir dalı silme | git push origin --delete feature |
git push SSS
Uzağa yeni bir dalı nasıl gönderirim?
git push -u origin <branch> komutunu çalıştırın. -u (--set-upstream kısaltması) dalı uzakta oluşturur ve yerel dalınızı ona bağlar, böylece sonrasında düz bir git push ve git pull argümansız çalışır. Uzak dal, bu ilk push'a kadar mevcut değildir.git push neden 'no upstream branch' diyor?
Yerel dalınız henüz bir uzak dala bağlı değil. Uzak dalı oluşturmak ve upstream'i ayarlamak için
git push -u origin <branch> ile gönderin. Bundan sonra tek başına git push, commit'leri nereye göndereceğini bilir.Etiketleri nasıl gönderirim?
Etiketler varsayılan olarak gönderilmez. Tek bir etiketi
git push origin <tagname> ile gönderin veya hepsini birden git push --tags ile gönderin. Bu yaygın bir tuzaktır - yerelde oluşturduğunuz bir etiket, onu açıkça göndermeden uzakta görünmez.Güvenli bir şekilde nasıl force push yaparım?
Geçmişi yeniden yazdıktan sonra (rebase veya amend),
--force yerine git push --force-with-lease kullanın. Yalnızca son fetch'inizden bu yana başka kimse push yapmadıysa uzağı üzerine yazar ve ekip arkadaşlarınızın çalışmasını korur. Tam açıklama için git force push sayfasına bakın.Bunu çevrimiçi olarak alıştırabilir miyim?
Evet.
git push'u tarayıcınızda gerçek bir kabukta çalıştırmak için terminal playground'u açın - kurulacak hiçbir şey yok. Coddy'nin ücretsiz etkileşimli Git kursu da uzaklarla çalışmayı adım adım ele alır.