Parfois, je dois diviser un gros patch en plus petits (disjoints), par exemple pour chaque fonctionnalité distincte incluse.
Habituellement, je le fais via les commandes standard vim yank / dd et la commutation de fenêtre partagée.
Mais existe-t-il des outils / astuces vim pour vous aider avec ce type d'édition?
Par exemple, le support de commandes comme: déplacer les 3 prochains morceaux complets vers le fichier de correctif ouvert à droite
Réponses:
Vous voudrez peut-être jeter un œil aux patchutils [1]. Pour la partie vim, j'ai écrit un petit plugin vim qui aide à naviguer dans les patchs: diff_navigator [2].
[1] http://cyberelk.net/tim/software/patchutils/
[2] http://www.vim.org/scripts/script.php?script_id=2361
la source
diff_navigator
URL est apparemment vim.org/scripts/script.php?script_id=2361 Emacs a des fonctionnalités similaires dans les modes Ediff et SMergeUn peu hors sujet, je suppose, mais je pense toujours que c'est utile.
Si vous utilisez git pour faire votre développement, vous pouvez facilement diviser l'ensemble de vos modifications en "morceaux" plus petits qui incarnent chacun une fonctionnalité. Vous vous retrouvez avec un commit par fonctionnalité et pouvez utiliser git
git-format-patch
pour créer (et même signer et attribuer correctement) des correctifs, j'ai expliqué comment le faire icila source
My Suse a
splitdiff
util qui fonctionne comme ceci:la source
Vous pouvez utiliser ce pour diviser le gros patch pour les petits morceaux (soit par fichier ou chaque morceau), puis si vous avez besoin de fusionner ensuite utiliser combinediff du patchutils paquet qui a été mentionné dans la réponse de Petr Uzel
la source