2017-10-09 8 views
-1

J'ai accidentellement enlevé svn branch de mon repo git local. La branche est toujours sur le serveur, et j'ai toujours une branche git qui suivait cette branche svn.git - restore svn branche supprimée sans relecture svn history

Je voudrais restaurer cette branche où elle était. Si je fais quelque chose comme this git commence à extraire cette branche en tant que nouvelle branche indépendante sans ancêtre commun et entrées d'historique en double. C'est ce dont j'avais peur.

Y a-t-il un moyen de dire à git de créer une branche svn à un commit donné, donc son historique sera intégré à ce que j'ai déjà?

Répondre

1

Je cette situation manipulé moi-même:

  1. A .git \ svn \ refs \ Distants \ svn \ il y avait une 'copie' de la branche supprimé avec @ nom. Quelque chose comme ceci: .git \ svn \ refs \ remotes \ svn \ branch @ 248166. J'ai fait une copie de ce répertoire avec @ 248166 enlevé.
  2. J'ai créé le fichier .git \ refs \ remotes \ svn \ branche avec commit-ish extrait de ma branche de suivi.
  3. J'ai lancé git svn fetch -r 633500:HEAD où 633500 est svn révision pour un commit svn avant.

Et cela a fonctionné.