Bi Fang a dit
J'ai extrait le code du serveur à 11h00, puis je l'ai fusionné avec mon code local et je l'ai soumis. Lorsque je me préparais à pousser à 11h01, il m'a été demandé avant de pousser. Quelqu'un d'autre s'est déjà précipité pour pousser, et je dois tirer à nouveau avant de soumettre. Dois-je annuler mon commit local à ce moment-là ?
Si je dois annuler mon commit local, comment dois-je l'annuler ?
Ce que je fais maintenant, c'est git reset --hard commitid. Cela semble déplacer les fichiers que j'ai soumis hors de la zone de stockage temporaire ? Est-ce que je fais ça correctement ? Existe-t-il d'autres moyens de procéder ?
Devrions-nous tirer à nouveau ?
S'il y a un conflit, résoudre le conflit puis s'engager, pousser
S'il n'y a pas de conflit, s'engager directement, pousser
Après git pull down,
S'il y a un conflit, résolvez le conflit avant de vous engager, puis poussez
S'il n'y a pas de conflit, vous pouvez pousser directement
Après avoir extrait le serveur, vous fusionnez le push de secours précédent dans votre propre version locale. Il y a deux résultats :
Fusion automatique réussie (avance rapide)
La fusion automatique a échoué, la fusion manuelle est requise
Dans les deux cas, vous devez réexécuter le test pour vous assurer que le code fusionné n'affecte pas vos fonctions et idées d'origine. Puis poussez.
git fetch origin && git rebase origin/master && git push