2012-06-21 6 views
2

Je suis nouveau à github. J'ai travaillé sur un code que j'ai récupéré de github. Maintenant j'ai fini de faire mes modifications et je veux pousser mon code vers github. Je voudrais créer une fourche du code original sur lequel j'ai travaillé et pousser mon code développé sur cette fourchette. Cependant, pendant que je travaillais sur le développement, il y a eu quelques changements au code original. Alors, quand je tente de pousser mon nouveau code à la fourche, je reçois l'erreur suivante:Comment pousser mon code à github fork

git push original master 
To https://github.com/<username>/<projectName>.git 
! [rejected]  master -> master (non-fast-forward) 
error: failed to push some refs to 'https://github.com/<username>/<projectName>.git' 
To prevent you from losing history, non-fast-forward updates were rejected 
Merge the remote changes (e.g. 'git pull') before pushing again. See the 
'Note about fast-forwards' section of 'git push --help' for details. 

J'utilisé

git pull 

qui émis les éléments suivants:

Pull is not possible because you have unmerged files. 
Please, fix them up in the work tree, and then use 'git add/rm <file>' 
as appropriate to mark resolution, or use 'git commit -a'. 

je peux » t continuer à partir de ce point. Que dois-je faire pour valider mon projet?

Répondre

7

Eh bien, git vous dit quoi faire. Si vous voulez tirer, vous devez terminer la fusion incomplète en premier. Git status devrait vous dire quels fichiers sont encore non fusionnés. Vous devez résoudre les conflits de fusion, puis utiliser git add sur le (s) fichier (s) pour indiquer à git que le conflit est résolu. Cela dit, si votre objectif est de travailler sur une fourche, vous devez d'abord fourchir le code, cloner le code fourchu, apporter vos modifications, puis repasser vos modifications à la fourche. Une fois cela fait, vous pouvez soumettre une demande d'extraction aux auteurs du projet original pour intégrer vos modifications.

+1

Il peut récupérer ses commits en fixant la fusion, commit. Puis tirez son rapport fourchu dans un autre répertoire, puis fusionnez du répertoire local au répertoire local. Puis poussez vers sa fourchette. –

-5

Dont tentative [DANGER] si vous travaillez dans une équipe

essayer.

git push -f original master 

sauve toujours le jour ...

+3

forcer une poussée est une mauvaise pratique et vous devriez l'éviter à moins que vous ne vouliez créer des ennemis: | – peshkira

+0

Je pensais qu'il travaillait seul et pas sur Kernel.org. Vérifiez cela, ce qui se passe là http://stackoverflow.com/a/432518/677185 –

Questions connexes