Üzerinde bazı kötü taahhütleri olan bir havuzum vardı (bu örnek için D, E ve F).
ABCDEF ustası ve kökeni / ustası
Yerel depoyu özellikle bir ile değiştirdim git reset --hard. Sıfırlamadan önce bir şube aldım, bu yüzden şimdi şöyle bir repo var:
A-B-C master
\ D-E-F old_master
A-B-C-D-E-F origin/master
Şimdi bu kötü taahhütlerin bazı kısımlarına ihtiyacım vardı, bu yüzden ihtiyacım olan bitleri aldım ve bazı yeni taahhütler yaptım, böylece şimdi yerel olarak aşağıdakilere sahibim:
A-B-C-G-H master
\ D-E-F old_master
Şimdi bu durumu uzaktan repoya itmek istiyorum. Ancak, bir git pushGit kibarca yapmaya çalıştığımda bana fırça verir:
$ git push origin +master:master --force
Total 0 (delta 0), reused 0 (delta 0)
error: denying non-fast forward refs/heads/master (you should pull first)
To git@git.example.com:myrepo.git
! [remote rejected] master -> master (non-fast forward)
error: failed to push some refs to 'git@git.example.com:myrepo.git'
Uzak repoyu yerel repo'nun geçerli durumunu nasıl alabilirim?
git push -forceşekilde yapabileceksiniz .