Stavo tirando nella mia directory .emacs, e ha colpito il seguente conflitto:Dopo git rm file; commit - come recuperare il file dal ramo remoto?
CONFLICT (add/add): Merge conflict in elisp/dired-details+.el
stato Git ha mostrato il seguente:
Unmerged paths:
# (use "git add/rm <file>..." as appropriate to mark resolution)
# both added: elisp/dired-details+.el
Okay, quindi git suggerito utilizzando git rm
. Voglio sostituire completamente il file locale con il file che sto tirando in, così sembra sorta di sorta di sensato ... Così faccio git rm elisp/dired-details+.el
e git merge
. Ottengo:
git unione: fatale: non hai concluso l'unione (MERGE_HEAD esiste). Per favore, commetti le modifiche prima che tu possa unire.
Ok, va bene: git commit -a -m "ugh merge conflicts"
; git pull origin master
.
Ora tutto si fonde bene, tranne per mi manca dired-details+.el
, io sono un po 'confuso, e mi piacerebbe conoscere le risposte a quanto segue:
- Come faccio ad annullare
git-rm
e ottenere tale file dal il ramo a distanza? .. - perché c'era un conflitto in primo luogo? .. che cosa sta succedendo qui con
add/add
? .. - Cosa avrei dovuto fare, invece di
git-rm
'ing il file che volevo sostituire? ..
Bene, tutto sembra così ovvio con il senno di poi. Non sapevo che: n: notazione, sembra abbastanza utile. –