Comment créer un modèle de message svn Commit et un crochet pour vérifier
J'utilise Visual SVN Server et Tortoise SVN (client) pour le contrôle des sources. Je voudrais que tous les développeurs normalisent sur un format cohérent pour les notes de vérification.
par exemple je veux leur message de propagation par défaut...
Synopsis:
Nom Du Développeur:(pré-rempli)
Révisé Par:
[Bug Id]:
[Changer Le Bug De L'Etat]:
Problèmes Connus:
Fichiers Affectés: (pré-rempli)
à l'avenir, j'aimerais que [ID du bogue] et [État du bogue] fournissent les informations pour déclencher une mise à jour automatisée du système de suivi des bogues. De plus, le nom du développeur et les fichiers affectés doivent être pré-peuplés avec svn user et les fichiers que l'utilisateur engage.
veuillez envoyer tout lien ou échantillon que vous avez.
4 réponses
Pris comment créer un modèle SVN Checkin de tortue (modifié afin de l'adapter à des versions plus récentes):
le modèle de journal peut être personnalisé selon les exigences du projet et peut être utilisé pour mettre en œuvre le format de journal strict.
ajouter ceci à votre dépôt svn est facile:
sélectionnez un dossier SVN auquel vous voulez appliquer ceci allez dans Propriétés Subversion (clic droit
TortoiseSVN -> Properties
)Sélectionner
New -> Advanced
, puistsvn:logtemplate
dans la liste déroulante nomméeProperty name
.ajouter les gabarits ci-dessus(ou les vôtres) à la zone de texte sous la boîte bascule.
si vous voulez appliquer la propriété à chaque fichier et dossier dans la hiérarchie au-dessous du dossier courant, cochez la case Recursive.
Cliquez sur
OK
pour ajouter la propriété à la liste.Vérifier-dans tous les les dossiers et les fichiers de sorte que tout le monde dans votre équipe peut utiliser le même modèle.
une façon de faire cela avec la ligne de commande est de changer la variable D'environnement SVN_EDITOR, décrite ici:
http://svn.haxx.se/dev/archive-2006-02/0487.shtml
SVN_EDITOR="rm svn-commit.tmp && cp $REPOS/hooks/log.tmpl svn-commit.tmp && vi svn-commit.tmp"
ou, pour plus de confort SVN_EDITOR (par exemple, en liant correctement à L'élément de travail TFS dans le cas d'avoir à utiliser SvnBridge), on pourrait stocker le script suivant comme ~ / bin / svn_editor :
#!/bin/sh
template_file="${@}"
template_file_new="${template_file}.new"
current_work_item_number_file="${HOME}/tfs_work_item_number_current.txt"
[ -f "${current_work_item_number_file}" ] && work_item=$(cat "${current_work_item_number_file}") || work_item="please fill in!"
# Yes folks, this is the TFS convention (hard, NOT-TO-BE-ALTERED text)
# to properly link to work items via SvnBridge commits!
work_item_prefix_hard_tfs_convention_text="work item: "
work_item_text="${work_item_prefix_hard_tfs_convention_text}${work_item}"
custom_text="${work_item_text}\n\n[this addition above initially placed to ignored content part here,\nto ensure properly abortable empty message by default - please move it to active content as needed]"
sed -e 's/\(will be ignored--\)/\n'"${custom_text}"'/' "${template_file}" > "${template_file_new}"
mv -f "${template_file_new}" "${template_file}"
$EDITOR "${@}"
et puis il suffit de faire
export SVN_EDITOR=~/bin/svn_editor
dans ~/.bashrc ou quelque chose du genre. Points Bonus pour garder le numéro de l'article de travail fichier mis à jour, même à partir de la page actuelle de l'article de travail comme vu dans L'interface Web de Firefox TFS (je pense qu'Il ya peut-être un moyen de communiquer avec Firefox pour obtenir la page les titres etc.). Ou tout simplement que ce script démarre un premier Editeur initial lancé sur le fichier de l'élément de travail persistant et laissez faire le second éditeur s'exécute sur le modèle de propagation personnalisé.
je l'ai trouvé à l'aide de:
Folder right-click -> Properties -> New... -> Advanced -> Property name: tsvn:logtemplate -> enter a Property value -> OK -> OK.