Saya cukup baru untuk git
menggunakannya untuk mengelola kode kita dalam lingkungan tim. Saya mengalami beberapa masalah rebasing dan saya memperbaikinya menggunakan
git checkout --ours filename.txt
git add filename.txt
git rebase --continue
Sekarang saya ingin mendorong perubahan saya, dan menjalankan perintah berikut
$ git push origin feature/my_feature_branch
beri saya kesalahan berikut:
To ssh://[email protected]:7999/repo/myproject.git
! [rejected] feature/my_feature_branch -> feature/my_feature_branch (non-fast-forward)
error: failed to push some refs to 'ssh://[email protected]:7999/repo/myproject.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Apa yang dapat saya lakukan untuk menghilangkan kesalahan tersebut?
PS: Saya menghindari untuk menggunakan --force
opsi sebanyak mungkin.
Jawaban:
Tampaknya, seseorang mendorong komitmen baru antara yang terakhir
git fetch
dangit push
. Dalam hal ini, Anda perlu mengulangi langkah Anda dan melakukan rebasemy_feature_branch
sekali lagi.Setelah
git fetch
saya sarankan untuk memeriksa situasi dengangitk --all
.sumber
Mungkin Anda tidak mengambil perubahan jarak jauh sebelum rebase atau seseorang mendorong perubahan baru (saat Anda melakukan rebasing dan mencoba mendorong). Coba langkah-langkah ini:
sumber
Saya punya masalah ini! Saya mencoba: git fetch + git merge, tetapi tidak terselesaikan! Saya mencoba: git pull, dan juga tidak terselesaikan
Kemudian saya mencoba ini dan menyelesaikan masalah saya (mirip dengan jawaban Engineer):
sumber
Saya memiliki masalah serupa dan saya mengatasinya dengan:
git pull origin
sumber
Saya terlambat ke pesta tetapi saya menemukan beberapa instruksi berguna di halaman bantuan github dan saya ingin membagikannya di sini.
Terkadang, Git tidak dapat membuat perubahan Anda ke repositori jarak jauh tanpa kehilangan komit. Jika ini terjadi, dorongan Anda ditolak.
Jika orang lain telah mendorong ke cabang yang sama dengan Anda, Git tidak akan dapat mendorong perubahan Anda:
Anda dapat memperbaikinya dengan mengambil dan menggabungkan perubahan yang dibuat pada cabang jarak jauh dengan perubahan yang telah Anda buat secara lokal:
Atau, Anda dapat menggunakan
git pull
untuk melakukan kedua perintah sekaligus:sumber
coba perintah ini
$ git push -f -u origin <name of branch>
yaitu
$ git push -f -u origin master
sumber
Tulis kunci pada repositori lokal bersama
Saya memiliki masalah ini dan tidak ada saran di atas yang membantu saya. Saya bisa mengambil semuanya dengan benar. Tapi dorongan selalu gagal. Itu adalah repositori lokal yang terletak di direktori windows dengan beberapa klien yang bekerja dengannya melalui driver folder bersama VMWare. Tampaknya salah satu sistem mengunci repositori Git untuk menulis. Setelah menghentikan sistem VMWare yang relevan, yang menyebabkan kunci semuanya segera diperbaiki. Hampir tidak mungkin untuk mencari tahu, sistem mana yang menyebabkan kesalahan, jadi saya harus menghentikannya satu per satu sampai berhasil.
sumber
Saya menggunakan saran di sini dan itu mengacaukan saya karena menggabungkan kode lokal saya langsung ke master. .... jadi ambillah semuanya dengan sebutir garam. Rekan kerja saya mengatakan hal berikut membantu menyelesaikan masalah, perlu menunjuk kembali cabang saya.
sumber
Di Eclipse lakukan hal berikut:
GIT Repositories> Remote> Origin> Klik kanan dan ucapkan ambil
GIT Repositories> Remote Tracking> Pilih cabang Anda dan ucapkan gabung
Buka proyek, klik kanan pada file Anda dan katakan Ambil dari hulu.
sumber
sumber
Berikut adalah solusi lain untuk mengatasi masalah ini
sumber
sumber