Jika repo GitHub melihat komit baru didorong ke sana, saat Anda bekerja secara lokal, saya akan menyarankan menggunakan:
git pull --rebase
git push
Sintaks lengkapnya adalah:
git pull --rebase origin master
git push origin master
Dengan Git 2.6+ (September 2015), setelah selesai (sekali)
git config --global pull.rebase true
git config --global rebase.autoStash true
Sederhana git pull
saja sudah cukup.
(Catatan: dengan Git 2.27 Q2 2020 , a merge.autostash
juga tersedia untuk tarikan reguler Anda, tanpa rebase)
Dengan begitu, Anda akan memutar ulang (yang --rebase
bagian) komit lokal Anda di atas baru diperbarui origin/master
(atau origin/yourBranch
: git pull origin yourBranch
).
Lihat contoh yang lebih lengkap di bab 6 Tarik dengan rebase dari Buku Saku Git .
Saya akan merekomendasikan:
# add and commit first
git push -u origin master
Itu akan membangun hubungan pelacakan antara cabang master lokal Anda dan cabang hulu.
Setelah itu, setiap dorongan di masa depan untuk cabang itu dapat dilakukan dengan sederhana:
git push
Lihat " Mengapa saya perlu mendorong cabang baru secara eksplisit? ".
Karena OP sudah mereset dan mengulang komitnya di atas origin/master
:
git reset --mixed origin/master
git add .
git commit -m "This is a new commit for what I originally planned to be amended"
git push origin master
Tidak perlu pull --rebase
.
Catatan: git reset --mixed origin/master
dapat juga ditulis git reset origin/master
, karena --mixed
opsi ini adalah yang standar saat menggunakan git reset
.