Comment annuler un svn update?
J'avais modifié les fichiers dans mon répertoire de travail et a fait un svn update. La mise à jour a été effectuée sans conflits.
Je voudrais être en mesure de revenir le répertoire de travail contenu dans l'état où il était juste avant le svn update.
La raison en est parce que je maintenir un dépôt git local en parallèle le dépôt svn. J'ai oublié de git commit mes modifications locales avant de faire le svn update. Maintenant, mon répertoire de travail contient des modifications locales mélangées avec les modifications résultant de la svn update. Si je m'engage, tous les changements apparaissent comme un changement atomique. J'ai souhaité qu'ils soient séparés. Si je pouvais revenir à la mise à jour et conserver le contenu du répertoire de travail que j'ai eu avant le svn update, je pouvais le faire.
Oui, le git étape est le moyen de sortir. Même si les fichiers ont été affecté, vous pouvez toujours utiliser
svn diff
et git apply
de prendre part à la subversion des changements et des modifications.Dans les deux cas, je vous recommande d'utiliser
git-svn
à l'avenir. Il peut gérer l'importation et l'exportation des révisions de manière fiable et de plus, ils peuvent être utilisés comme locaux patch file d'attente (vous pouvez avoir plusieurs s'engage sur la branche locale et pousser seulement certains d'entre eux à la subversion à l'aide de rebase interactif).OriginalL'auteur chmike | 2013-10-08
Vous devez vous connecter pour publier un commentaire.
Il n'est pas possible. L'état avant la mise à jour est oublié.
Vous pouvez séparer les changements en faisant de la subversion diff, à l'aide de
git apply
de l'appliquer à l'index, s'engager à ce que (vos changements) et que de commettre le tout (les changements de traction).Qui est solution d'urgence. Je vous suggère de passer à
git-svn
, qui va gérer ce genre de choses pour vous à l'avenir.OriginalL'auteur Jan Hudec
Je continuer à appuyer sur cette question, et il ne fait pas les inclure la réponse simple à la "Comment annuler un svn update?".
Donc, pour le profit des autres, avec le cas résoluble où vous souhaitez restaurer une mise à jour:
Vérifiez d'abord dans le journal avec:
Cela vous donnera le numéro de révision (par exemple
957
) que vous souhaitez retourner. Alors:vrai @RobertPollak mais il répond à la question posée par le titre de la question...
Downvoting, parce que cela ne répond pas à la question d'origine (la première phrase, qui contient la remarque sur les fichiers modifiés). Ce serait une réponse à une autre question "Comment mettre à jour vers une révision spécifique". Cette réponse ne fonctionnera pas si il y a des fichiers modifiés, et il n'est pas même mentionné à ce sujet.
OriginalL'auteur ErichBSchulz
effectuer une "mise à Jour", si vous modifiez votre fichier local à la version stable, et puis re-commettre. De cette façon, vous allez perdre toutes les modifications locales.
Évidemment, dans votre cas, si le fichier modifié, ne sont pas en conflit, cette opération est inutile. Donc, vous avez de la chance! 😉 have a nice day
OriginalL'auteur Joe Taras
C'est pour les utilisateurs de linux.
Supposons que les Révisions comme suit.
Tête - 20
Les révisions précédentes sur la tête - 18, 17, 15, 14, 10, 9,8.
accédez à votre répertoire src.
Utilisation
svn merge-r 17:18 $url
$url de votre svn de base.
OriginalL'auteur Chamly Idunil
Dans le cas, si il y avait des conflits s'est produite pendant la mise à jour, il y aura une copie de votre dossier et à la révision de fichier disponibles dans votre bac de recyclage
OriginalL'auteur Abhi