Existe-t-il un moyen de commettre des modifications que j'ai apportées à ma caisse SVN de Trunk à une branche à la place?

StackOverflow https://stackoverflow.com/questions/1514501

  •  19-09-2019
  •  | 
  •  

Question

Je viens de commencer à travailler sur des changements contre Trunk sur un dépôt SVN, pensant qu'ils seraient un peu petits. Maintenant, je commence à réaliser que j'aurais probablement dû commencer une nouvelle branche à la place. Plutôt que de faire une branche, puis d'y déplacer chaque pièce individuelle, existe-t-il un moyen de faire une nouvelle branche, puis de commettre les modifications de ma copie de travail?

Était-ce utile?

La solution

  1. Faites une nouvelle branche à partir de l'endroit où vous avez commencé à développer
  2. Passez à la branche nouvellement créée
  3. commettre les modifications locales (s'engagera dans la nouvelle succursale)

Ne faites pas de paiement

Je le fais avec SVN 1.6.5, cela fonctionne sans problème, mais si vous êtes vraiment paranoïaque, vous pouvez faire:

  1. Créer un patch à partir de la copie de travail actuelle
  2. Créer une branche
  3. passer à lui
  4. Appliquer le patch
  5. commettre

Autres conseils

Qu'en est-il de la création d'un patch à partir de votre travail actuel avec svn diff, puis en faisant une nouvelle branche, et en appliquant le patch à la branche avec patch -p0?

Vous pouvez directement brancher l'état de votre copie de travail sur une URL avec le svn copy commande. La branche créée comprendra les modifications locales.

Quelques gotchas:

  • Vous pouvez obtenir des erreurs indiquant quelque chose comme "le fichier existe déjà". Ceci est causé par un décalage des révisions de base dans votre copie de travail, plus spécifiquement entre un fichier et son dossier parent. Une solution possible consiste à faire un svn update avant d'essayer de se ramifier de cette manière.
  • après le svn copy, la copie de travail sera inchangée. Il pointera toujours vers le coffre. Il montrera également les modifications locales de son statut. Vous devez d'abord réintégrer ces modifications, que vous continuiez à utiliser la copie de travail telle quel ou le basculez à la nouvelle branche.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top