Cela se produit car votre copie locale de la branche que vous souhaitez fusionner est obsolète. J'ai ma succursale appelée MyBranch
et je veux la fusionner ProjectMaster
.
_>git status
On branch MyBranch-Issue2
Your branch is up-to-date with 'origin/MyBranch-Issue2'.
nothing to commit, working tree clean
_>git merge ProjectMaster
Already up-to-date.
Mais je sais qu'il y a des changements à fusionner!
Voici la chose, quand je tape git merge ProjectMaster
, git regarde ma copie locale de cette branche, qui n'est peut-être pas à jour . Si oui en utilisant, euh, pour voir si tel est le cas, je dis d' abord Git pour vérifier et voir si mes branches sont à jour et les modifications aille chercher fetch
. Ensuite, je saute dans la branche que je veux fusionner pour voir ce qui s'y passe ...
_>git fetch origin
_>git checkout ProjectMaster
Switched to branch ProjectMaster
**Your branch is behind 'origin/ProjectMaster' by 85 commits, and can be fast-forwarded.**
(use "git pull" to update your local branch)
Ah-ha! Ma copie locale est périmée par 85 commits, cela explique tout! Maintenant, je Pull
note les modifications qui me manquent, puis je rejoins MyBranch
la tentative de fusion.
_>git pull
Updating 669f825..5b49912
Fast-forward
_>git checkout MyBranch-Issue2
Switched to branch MyBranch-Issue2
Your branch is up-to-date with 'origin/MyBranch-Issue2'.
_>git merge ProjectMaster
Auto-merging Runbooks/File1.ps1
CONFLICT (content): Merge conflict in Runbooks/Runbooks/File1.ps1
Automatic merge failed; fix conflicts and then commit the result.
Et maintenant, j'ai un autre problème à résoudre ...