Yorumlardan:
İle uyumsuz --interactive option
Aslında ... artık Git 2.29 (Q4 2020) ile uyumlu değil: " git rebase -i" ( adam ) biraz daha fazla seçenek öğreniyor .
Aşağıdakilerle uyumlu seçenekler:
Bkz. 6160b2e (26 Ağu 2020), Junio C Hamano ( gitster) .
Bkz 2712669 taahhüt (17 Ağu 2020) ve ef484ad taahhüt tarafından (13 Temmuz 2020) Rohit Ashiwal ( r1walz) .
Bkz a3894aa işlemek , 7573cec işlemek , e8cbe21 taahhüt tarafından (17 Eki 2020) Phillip Wood ( phillipwood) .
(Tarafından Birleştirilmiş - Junio C Hamano gitster- içinde 9c31b19 taahhüt 2020 03 Eyl)
rebase -i: destek --ignore-date
Orijinal yama: Rohit Ashiwal
İmza: Phillip Wood
Rebase, her biri farklı bir seçenek kümesini destekleyen ' apply' ve ' merge' iki farklı arka uçla uygulanır .
Özellikle, uygulama arka ucu , birleştirme arka ucunda uygulanmayan ' ( adam ) ' tarafından uygulanan bir dizi seçeneği destekler .
Bu, kafa karıştırıcı olan arka ucun kullanıldığına bağlı olarak mevcut seçeneklerin farklı olduğu anlamına gelir.git am
Bu yama --ignore-date, arka uç birleştirme seçeneği için destek ekler .
Bu seçenek, taahhütleri yeniden yazarken orijinal yazar tarihini yeniden kullanmak yerine yazar tarihi olarak geçerli saati kullanır.
Uygulama arka ucunun kombinasyonunu --ignore-dateve --committer-date-is-author-dateaynı şekilde işlemeye özen gösteriyoruz .
Ve:
rebase: Ekle --reset-author-date
Yardımcı : Junio C Hamano
İmza: Rohit Ashiwal
Önceki commit, --ignore-dateişaretini tanıttı rebase -i, ancak yazar tarihinin veya kaydedici tarihinin göz ardı edilip edilmediğini söylemediği için isim oldukça belirsiz.
Kesin amacı iletmek için bir takma ad ekleyin.
--reset-author-date
Ayrıca:
rebase -i: support --committer-date-is-author-date
Orijinal yama: Rohit Ashiwal
İmza: Phillip Wood
Bu yama --committer-date-is-author-date, arka uç birleştirme seçeneği için destek ekler .
Bu seçenek, yeni kaydetme oluşturulduğunda kaydedici tarihi olarak yeniden yazılan kaydetme tarihini kullanır.
git rebaseartık man sayfasında şunları içeriyor :
--committer-date-is-author-date:
Kaydedici tarihi olarak geçerli saati kullanmak yerine, kaydedici tarihi olarak yeniden yayımlanan taahhüdün yazar tarihini kullanın.
Bu seçenek ima eder --force-rebase.
git rebaseayrıca man sayfasında şunları içerir :
--ignore-date:
Bu bayrak, yeniden yapılan her işlemin yazar tarihini değiştirmek için 'git am'e geçirilir (bkz. git am).
2.29'da (yukarıda), " --committer-date-is-author-date" seçeneğinin " rebase" ve " am" alt komutlarının yanlışlıkla e-posta adresini kaybettiğini unutmayın; bu, Git 2.29.1 (Q4 2020) ile düzeltilmiştir.
Bkz. Commit 5f35edd , commit 16b0bb9 , commit 56706db (23 Ekim 2020) by Jeff King ( peff) .
(Göre Birleştirilmiş Junio Cı Hamano - gitster- içinde işlemek f34687d , 26 Ekim 2020)
am: bozuk e-postayı düzelt --committer-date-is-author-date
İmza: Jeff King
Commit e8cbe2118a ( am: dışa GIT_COMMITTER_DATE,aktarmayı durdur 2020-08-17) fmt_ident(), bir ortam değişkeni ayarlamak ve commit_tree()onu işlemesine izin vermek yerine , kullanılacak kaydedici tarihini ayarlamak için kodu yeniden yazdı .
Ancak iki hatayı ortaya çıkardı:
- kaydedici e-postası yerine yazar e-posta dizesini kullanıyoruz
- Committer ident'ini ayrıştırırken, e-postanın uzunluğunu hesaplamak için yanlış değişkeni kullandık ve bunun her zaman sıfır uzunlukta bir dize olmasına neden oldu
Bu taahhüt, her ikisini de düzeltir, bu da bu seçeneği yeniden " apply" arka uç üzerinden testimizin başarılı olmasına neden olur.
Ve:
rebase: bozuk e-postayı --committer-date-is-author-date ile düzeltin
Bildiren: VenomVendor
İmza: Jeff King
Commit 7573cec52c ("rebase -i: support --committer-date-is-author-date", 2020-08-17, Git v2.29.0-rc0 - grup # 13'te listelenen birleştirme) , kaydedici kimlik ayrıştırma kodunu kopyaladı itibaren .
Ve bunu yaparken, e-postayı her zaman boş bir dizeye ayarladığımız bir hatayı kopyaladı.builtin/am.c
Bir git-amönceki işlemedeki sürümü düzelttik ; bu commit kopyalanan kodu düzeltir.
git rebase --rootveya-i, ile--reset-author-dateçalışacaktır. Bkz aşağıda Cevabımı