2009-12-27 5 views
4

vimdiff permet d'afficher graphiquement le diff de deux fichiers et de sélectionner les modifications de gauche à droite/de droite à gauche.
Les fichiers que j'ai affaire sont des fichiers énormes et la plupart des différences rapports vimdiff peuvent être fusionnés automatiquement, sauf quelques-uns.Comme il faut beaucoup de temps pour aller diff par diff dans vimdiff et prendre l'action. Je voudrais savoir s'il existe une option disponible dans vimdiff qui automatise les différences dans les fichiers gauche et droit tant qu'il n'y a pas d'ambiguïté et laissant les résolutions conflictuelles similaires aux outils svn merge et cvs fusionne les outils ?vimdiff en tant qu'outil de fusion

Répondre

4

Il n'est pas possible de fusionner automatiquement les modifications dans deux fichiers sauf si nous avons une copie de base dans laquelle ces deux fichiers sont branchés et les modifications sont effectuées séparément. Si un élément est d'un côté et non de l'autre, il ne peut pas juger si cet élément a été ajouté récemment ou si un élément existant a été supprimé. Comme il existe une copie de base lors de la fusion de fichiers dans un référentiel, cvs fusionne, svn merge peut fusionner automatiquement les modifications.

0

On dirait que vimdiff ne le permet pas. page Man dit
« vimdiff - modifier deux ou trois versions d'un fichier avec vim et montre les différences »

Mais vous pouvez jeter un oeil à Kdiff3 qui vous permet de comparer et de fusionner.

3

Si vous utilisez pas de contrôle de version, vous pouvez essayer diff et patch de cette façon:

  1. Avant de modifier votre fichier (par exemple, file.txt), faire une sauvegarde de la version originale (file.orig) .
  2. Lorsque les modifications sont apportées, créez un fichier patch: diff file.orig file.txt >patch.txt
  3. Obtenez un fichier avec lequel vous souhaitez fusionner les modifications (par exemple, fichier2.txt).
  4. Utiliser patch: patch file2.txt patch.txt

changements seront fusionnés, les lignes en conflit seront placés dans un fichier séparé.

+0

Cela semble bien. Tout inconvénient pour cette approche. – Gagan

+0

Ça marche très bien, merci pour ceux que je viens d'apprendre quelque chose! – soyuka