J'étais en train de migrer un svn repo vers git. J'ai créé un répertoire temp propre, utilisé git svn init pour y insérer des éléments, puis ajouté la télécommande et poussé. Maintenant, sur l'autre répertoire source réel (que j'avais cloné à partir du référentiel vide avant de commettre des éléments à partir de svn), j'ai effectué une recherche. Et puis j'ai fait une vérification et obtenu le message ci-dessus. Après un moment, j'ai pensé que je pouvais obtenir la source avec un tirage et je l'ai fait. Ma question est qu'est-ce que ce message d'erreur voulait dire dans ce contexte? Comment ai-je obtenu ce message d'erreur particulier? Avertissement: je suis un novice git
Je pense que c’est parce que votre recherche, qui ne récupère que les références distantes et les validations, ne vous a pas donné de branche master pour effectuer le paiement. Comme vous étiez dans un dépôt vide, vous n’avez jamais été sur une branche, votre git checkout
n’a donc pas de branche master à laquelle accéder.
Vous pouvez directement extraire le maître distant en le nommant explicitement avec git checkout Origin/master
, mais cela vous laissera dans un état de tête détachée.
Une fois que vous avez fait le pull, il a récupéré et fusionné, le pull a créé un master local pour suivre le maître distant.
J'avais la même erreur en essayant de migrer svn vers git. Voici ma solution.
Confirmez que vous avez initialisé le dépôt Git:
git init
Confirmez que votre migration est correcte à partir de svn:
git branch --remote
#You should see this output:
#git-svn
Créer une tête détachée:
git checkout git-svn
Convertissez la tête détachée en branche maîtresse:
git checkout -b master
À ce stade, votre dépôt git fonctionnera normalement.