Sejak saya membuat repositori, tampaknya tag yang saya buat tidak didorong ke repositori. Ketika saya lakukan git tag
di direktori lokal semua tag ada, tetapi ketika saya masuk ke repositori jarak jauh dan melakukan git tag
, hanya beberapa yang pertama muncul.
Apa masalahnya?
git push --follow-tags
sekarang dapat bermanfaat, lihat jawaban saya di bawah iniJawaban:
Anda bisa melakukan ini:
sumber
git push --tags
karena bisa sangat sulit untuk menyingkirkan tag buruk ketika rekan kerja Anda dilatih untuk mendorong semua tag, karena orang terus mendorong tag buruk lama yang mereka miliki secara lokal setiap kali mereka ingin mendorong tag baru. Karena ini, saya hanya akan menyarankan setiap orang untuk menggunakangit push origin <tag_name>
sekarang. " - disalin dari stackoverflow.com/a/5195913/4130619Dalam konfigurasi git remote default Anda harus mendorong tag secara eksplisit (ketika mereka diambil secara otomatis bersama dengan komit yang mereka tuju). Anda harus menggunakan
untuk mendorong satu tag, atau
untuk mendorong semua tag (atau
git push --tags
untuk mendorong remote standar, biasanyaorigin
).Ini adalah perilaku yang sangat dimaksudkan, untuk membuat tag mendorong secara eksplisit. Tag pendorong biasanya merupakan pilihan sadar.
Meringkas apa yang ditulis Junio C. Hamano (ditautkan dalam komentar oleh @Andre Miras)
Itulah sebabnya
git fetch
tag "mengikuti" secara otomatis, yaitu mengunduh tag saat mengunduh revisi yang mereka tunjukkan - dengan kata lain mengunduh semua tag yang diterbitkan yang relevan .Itu sebabnya Anda perlu mendorong tag secara eksplisit, untuk menandai tag sebagai publik.
Atau Anda dapat mengkonfigurasi jarak jauh yang Anda dorong untuk selalu mendorong semua tag, mis. Letakkan sesuatu seperti itu di
.git/config
:Ini berarti paksa dorong semua kepala (semua cabang) dan semua tag (jika Anda tidak ingin memaksa mendorong kepala, hapus awalan '+' dari refspec).
sumber
Perhatikan bahwa sejak git 1.8.3 (22 April, 2013) , Anda tidak lagi harus melakukan 2 perintah untuk mendorong cabang, dan kemudian untuk mendorong tag:
Anda sekarang dapat mencoba, ketika mendorong komit baru:
Itu tidak akan mendorong semua tag lokal, hanya yang beranotasi yang dirujuk oleh komit yang didorong dengan
git push
.Ini telah diperkenalkan di commit c2aba15 oleh Junio C Hamano (
gitster
) :Konfigurasi
push.followTags
memungkinkan untuk menyertakan--follow-tags
secara default (Git 2.4.1+, Q2 2015). Lihat " Tag & komitmen push git secara bersamaan "sumber
git push --follow-tags
tidak mendorong lebih darigit push
Apa yang biasanya saya lakukan adalah:
Artinya mendorong setiap cabang yang sudah ada, ditambah tag. Itu tidak memaksa push, dan itu tidak mendorong cabang bahwa Anda tidak mendorong secara manual.
sumber
Dan jika Anda ingin mengambil paksa semua tag, Anda dapat mengaturnya di konfigurasi dengan:
Dari dokumen:
sumber