Jika Anda yakin tidak ada yang membuat perubahan pada repositori git Anda dan bahwa Anda bekerja pada versi terbaru, git pull
tidak masuk akal sebagai solusi di hati Anda ...
Maka ini mungkin yang terjadi, Anda gunakan git commit --amend
Ini memungkinkan Anda menggabungkan perubahan bertahap dengan komit sebelumnya alih-alih melakukannya sebagai snapshot yang sama sekali baru. Itu juga dapat digunakan untuk mengedit pesan komit sebelumnya tanpa mengubah snapshot-nya.
Tutorial ATLASSIAN: penulisan ulang riwayat
Namun, tidak disarankan untuk melakukan git commit --amend
jika Anda telah mendorong komit ke GitHub , ini karena "mengubah tidak hanya mengubah komit terbaru - itu menggantikannya sepenuhnya. Untuk Git, itu akan terlihat seperti komit baru" yang berarti bagi pengembang lain di GitHub Anda, riwayat tampak seperti A-> B-> C tetapi bagi Anda sepertinya A-> B-> D, jika GitHub mengizinkan Anda push
, semua orang harus memperbaiki secara manual riwayat mereka.
Ini adalah alasan mengapa Anda mendapatkan pesan kesalahan ! [rejected] master -> master (non-fast-forward)
, jika Anda tahu bahwa tidak ada yang menarik perubahan terbaru Anda, Anda dapat melakukannya git push --force
, ini akan mengubah sejarah git di repo publik Anda . Kalau tidak ... Anda dapat melakukan git pull
, tetapi saya percaya ini akan memiliki hasil yang sama seperti Anda tidak pergi git commit --amend
, itu akan membuat komit baru (yaitu: sejarah git setelah tarik git: A-> B-> C-> D )
untuk lebih detail: Bagaimana cara mengubah komit terbaru Anda