рджреГрд╢реНрдп рддреБрд▓рдирд╛ рдФрд░ рдорд░реНрдЬ рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди

рдПрдХ рд╣рдм рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рддрд░рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА ( рдбреАрд╡реАрд╕реАрдПрд╕ ), рдЙрдирдХреА рддреБрд▓рдирд╛, рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдЬреАрдпреВрдЖрдИ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рд▓реЗрдЦ рдереЗред рдЬреАрдЖрдИрдЯреА рдФрд░ рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдИрдбреАрдИ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреА рднреА рдЪрд░реНрдЪрд╛ рд╣реБрдИ рд╣реИред рд▓реЗрдХрд┐рди рджреГрд╢реНрдп рддреБрд▓рдирд╛ рдЙрдкрдХрд░рдг рдФрд░ рдорд░реНрдЬ рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдереА ред

рдЕрд▓рдЧ рдФрд░ рд╡рд┐рд▓рдп
рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬреАрдЖрдИрдЖрд░ (рдЬрд┐рд╕реЗ рдореИрдВ рдЕрднреА рднреА рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рдорд╛рдирддрд╛ рд╣реВрдВ) рд╕реЗ рдЬреАрдЖрдИрдЯреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдХреВрдж" рджрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐, рдореЗрд░реА рд░реБрдЪрд┐ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░реЛрдЬреЗрдХреНрдЯ, рдЧрд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЧрд┐рдердм рдкрд░ рд╣реЛрд╕реНрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, рдЙрдкрдХрд░рдг рдХреЗ рд╢рд╕реНрддреНрд░рд╛рдЧрд╛рд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╢реНрди рдЙрддреНрдкрдиреНрди рд╣реБрдЖ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рджреГрд╢реНрдп рддреБрд▓рдирд╛ рдФрд░ рд╡рд┐рд▓рдп (рдЕрдВрддрд░ рдФрд░ рд╡рд┐рд▓рдп) рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рдЪреБрдирдиреЗ рдХрд╛ рдкреНрд░рд╢реНрдиред рд╣рдм рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдХрдореА рдХреЗ рд▓рд┐рдП рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЗрд╕ рдорд┐рдиреА-рд╕рдореАрдХреНрд╖рд╛ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ - рдЧрд░реНрдо рдЦреЛрдЬ рдореЗрдВред

рдХрдЯ рдХреЗ рддрд╣рдд рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрдореИрдЧрд░ рдФрд░ рд╡рд┐рдирдорд░реНрдЧреЗ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдг рднреА рдорд┐рд▓реЗрдВрдЧреЗред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рд▓реЛрдЧ рд╕рдордп рдмрдЪрд╛рдПрдВрдЧреЗред
рдирд╛рдорд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВрдордВрдЪ

KDiff3


http://kdiff3.sourceforge.net/

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдпрд╣ рдЙрдкрдХрд░рдг git рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЪреЛрдЯ рдирд╣реАрдВ рдкрд╣реБрдВрдЪреЗрдЧреАред

рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рдирд┐: рд╢реБрд▓реНрдХ;
  • рддреНрд░рд┐рдкрдХреНрд╖реАрдп рд╡рд┐рд▓рдп рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ;
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо;
  • рд╡рд┐рднрд┐рдиреНрди рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ;

рд╡рд┐рдкрдХреНрд╖ :
  • рдкрд░рд┐рд╡рд░реНрдзрди рдХреЗ рдмрд┐рдирд╛ рдХреЛрдИ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд╣реАрдВред


рдиреЛрдЯ: TortoiseHg рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ ред
рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕

DiffMerge


http://www.sourcegear.com/diffmerge/index.html

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рдирд┐: рд╢реБрд▓реНрдХ;
  • рддреНрд░рд┐рдкрдХреНрд╖реАрдп рд╡рд┐рд▓рдп рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ;
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдоред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╕рд┐рд░рд┐рд▓рд┐рдХ рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рд╕рдордп рдХреЗ рд╕рд╛рде, рд╡реЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджреЗрдВрдЧреЗред
  • рдбрд┐рдлрдореИрдЧрд░, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред


рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕

WinMerge


http://www.winmerge.org
http://ru.wikipedia.org/wiki/Winmerge

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд
  • рдПрдирдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ;
  • рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЗрд╢рд╛рд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ;
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рддреБрд▓рдирд╛ред

рд╡рд┐рдкрдХреНрд╖ :
  • рдорд░реНрдЬ рдЯреВрд▓ рджреЛ-рддрд░рдлрд╝рд╛ рд╣реИ, рдЬреЛ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ;
  • рдХреЗрд╡рд▓ рд╡рд┐рдВрдбреЛрдЬред

рдиреЛрдЯ : рдореИрдВрдиреЗ рдЗрд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд╣реБрдд рдкрд╣рд▓реЗ рд╕реЗ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдерд╛ (рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдореИрдВрдиреЗ рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рдФрд░ рдЧрд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдерд╛) рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рдорд░реНрдЬ рдЯреВрд▓ рджреЛ-рддрд░рдлрд╛ рд╣реИ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдЕрд╕реБрд╡рд┐рдзрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рд╡рд┐рдВрдбреЛрдЬ

рдорд┐рд▓рдХрд░ рдПрдХ рд╣реЛ рдЬрд╛рдирд╛


http://meld.sourceforge.net/

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рдЬреАрдкреАрдПрд▓ рд╡реА 2;
  • рджреЛ-рддрд░рдлрд╝рд╛ рдФрд░ рддреАрди-рддрд░рдлрд╝рд╛ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рд▓рдп;
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рддреБрд▓рдирд╛;
  • рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ (рд╕реНрдерд╛рдкрд┐рдд GtkSourceView рдХреЗ рд╕рд╛рде)ред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддрд╣рдд рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ Python, GTK +, Glib, GtkSourceView рдХреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рд╣рд░ рдХреЛрдИ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ред

рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕
рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдирд┐рд░реНрджреЗрд╢:
https://live.gnome.org/Meld/Windows

рдлреИрд▓рд╛рдирд╛


http://diffuse.sourceforge.net/

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рдЬреАрдкреАрдПрд▓;
  • 2-рд╡реЗ, 3-рд╡реЗ рдФрд░ рдПрди-рд╡реЗ (рдлрд╛рдЗрд▓реЛрдВ рдХреА рдордирдорд╛рдиреА рд╕рдВрдЦреНрдпрд╛) рдорд░реНрдЬ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди;
  • рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ;
  • UTF-8 рдХреЗ рд╕рд╛рде рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ;
  • рд░рджреНрджреАрдХрд░рдг рдХреА рдЕрд╕реАрдорд┐рдд рдЧрд╣рд░рд╛рдИ (рдкреВрд░реНрд╡рд╡рдд рдХрд░реЗрдВ);
  • рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХреЛрдб рдиреЗрд╡рд┐рдЧреЗрд╢рдиред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╢рд╛рдпрдж рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдерддрд╛ред

рдиреЛрдЯ : рдЬрдм рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддрд╣рдд Git Bash рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ git mergetool рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд▓рдп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рдЪреМрдерд╛ - "рдЕрддрд┐рд░рд┐рдХреНрдд" рд╡рд┐рдВрдбреЛ рдЦреБрд▓рддреА рд╣реИред
рдЖрдк рдЗрд╕реЗ рд╡рд┐рдиреНрдпрд╛рд╕ c: / Git / libexec / git-core / mergetools / confuse рдХреЛ рд╣рдЯрд╛рдХрд░ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕
рдиреЛрдЯ : рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддрд╣рдд рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╕рдордп, рдЗрд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ (рдореЗрд▓реНрдб рдХреЗ рд╡рд┐рдкрд░реАрдд), рдЕрд░реНрдерд╛рддреН рдкрд╛рдпрдерди рдФрд░ PyGTK рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

TKDiff


http://sourceforge.net/projects/tkdiff/

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • GPLv2;
  • рдЖрдк рдорддрднреЗрджреЛрдВ рдХреЗ рд▓рд┐рдП рдмреБрдХрдорд╛рд░реНрдХ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ;
  • рдпрд╣ рдПрдирдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ;

рд╡рд┐рдкрдХреНрд╖ :
  • рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдФрд░ рдЕрдиреНрдп рдЙрддреНрдкрд╛рджреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЦрд░рд╛рдм (рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рджреЗрдЦреЗрдВ) рд▓рдЧрддрд╛ рд╣реИред
  • рдХреЛрдИ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдирд╣реАрдВ;
  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ред

рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕

SmartSynchronize


http://www.syntevo.com/smartsynchronize/index.html

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рддреНрд░рд┐рдХреЛрдгреАрдп рд╡рд┐рд▓рдп;
  • рдПрдирдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ;
  • рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ;
  • рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдиреЛрдЯ : SmartySynctonize SmartGit рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ Git рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ GUI рдЙрдкрдХрд░рдг рд╣реИ (рдЧреИрд░-рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рднреА рдореБрдлреНрдд)ред
рд╡рд┐рдВрдбреЛрдЬ, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕, рд▓рд┐рдирдХреНрд╕

BeyondCompare


http://www.scootersoftware.com/
http://en.wikipedia.org/wiki/Beyond_Compare

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рддреНрд░рд┐рдХреЛрдгреАрдп рд╡рд┐рд▓рдп;
  • рдлрд╝рд╛рдЗрд▓реЗрдВ, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рджреВрд░рд╕реНрде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░, рд╕рд╛рде рд╣реА рдПрдордкреА 3 рдлрд╝рд╛рдЗрд▓реЗрдВ, рдЪрд┐рддреНрд░, рдЖрджрд┐ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдВрддрд┐рдо рдмрд┐рдВрджреБ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рд╣реИрдВ, рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╢реЗрдпрд░рд╡реЗрдпрд░;
  • рдХреЛрдИ рдореИрдХ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВред

рд╡рд┐рдВрдбреЛрдЬ рд▓рд┐рдирдХреНрд╕

рдЕрд░рд╛рдХреНрд╕рд┐рд╕ рдХрд╛ рд╡рд┐рд▓рдп


http://www.araxis.com/merge/

[ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ ]
рдкреЗрд╢реЗрд╡рд░реЛрдВ :
  • рддреНрд░рд┐рдХреЛрдгреАрдп рд╡рд┐рд▓рдп;
  • рдПрдирдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ;
  • рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рд╕рд┐рдВрдЯреЗрдХреНрд╕
  • рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░ рд╕рдХрддрд╛ рд╣реИ;
  • рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ (рдЧреАрдЧрд╛рдмрд╛рдЗрдЯреНрд╕) рдФрд░ рдмрдбрд╝реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдкрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ;
  • рддреБрд▓рдирд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд░рд┐рдкреЛрд░реНрдЯ рдЬрдирд░реЗрд╢рдиред
  • рд░рд┐рдмрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ (рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдкреНрд▓рд╕ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ)ред

рд╡рд┐рдкрдХреНрд╖ :
  • рд╢реЗрдпрд░рд╡реЗрдпрд░;
  • рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВред

рдиреЛрдЯ : рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ, рдЙрдЪреНрдЪ рд▓рд╛рдЧрдд рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдХрдИ рд▓реЛрдЧ рдЗрд╕ рдЙрдкрдХрд░рдг рдХреА рдкреНрд░рд╢рдВрд╕рд╛ рдФрд░ рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред
рд╡рд┐рдВрдбреЛрдЬ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рд╕рднреА рд╕реВрдЪреАрдмрджреНрдз рдЙрдкрдХрд░рдг рдЕрдкрдирд╛ рдХрд╛рдо рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕рдореАрдХреНрд╖рд╛ рдмрд╣рд╕ рдХрд╛ рд╡рд┐рд╖рдп рдирд╣реАрдВ рд╣реИ , рдЬреИрд╕рд╛ рдХрд┐ рд╣рд░ рдХреЛрдИ рд╕реНрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрди рдЪреБрдирддрд╛ рд╣реИред
рдбрд┐рдлрдорд╛рд░реНрдЧрд░ рдФрд░ рд╡рд┐рдирдорд░реНрдЧреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Git рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВред рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛, рдЖрдк рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде Git рдХреЗ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


Git рдФрд░ DiffMerge


1) рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ c: / Git / libexec / git-core / mergetools /
рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

diff_cmd () { "c:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe" \ "$LOCAL" "$REMOTE" >/dev/null 2>&1 } merge_cmd () { "c:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe" \ --merge --result="$MERGED" "$LOCAL" "$BASE" "$REMOTE" >/dev/null 2>&1 status=$? } 

2) рдЕрдм рдлрд╝рд╛рдЗрд▓ c: /User/swipe/.gitconfig рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐рдпрд╛рдБ:

 [diff] tool = diffmerge [merge] tool = diffmerge [mergetool "diffmerge"] cmd = "diffmerge" trustExitCode = true 

3) рдПрдХ рд╕рдВрдШрд░реНрд╖ рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП DiffMerge рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ

 git init //      readme.txt git add . //      git commit -m "empty readme" //   git branch new //    git checkout new //         readme.txt git add . //     git commit -m "new string" //      git checkout master //   master      readme.txt git add . //     git commit -m "master string" //   git hist --all //    

рдкреЗрдбрд╝

 git difftool master new //    

diff

 git merge new //    new   master 

рд╕рдВрдШрд░реНрд╖

рдорд░реНрдЬ рд╕рдВрдШрд░реНрд╖ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╣рдордиреЗ рдорд╛рдВрдЧрд╛ рд╣реИред

 git mergetool //    

рдорд░реНрдЬ

рдордзреНрдп рд╡рд┐рдВрдбреЛ рдореЗрдВ, рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред
рд╕рдВрдШрд░реНрд╖ рд╕реБрд▓рдЭ рдЧрдпрд╛ред
DiffMegre рдиреЗ рдпрд╣рд╛рдВ рд╕реЗрдЯрд┐рдВрдЧ рдХреА рдЬрд╛рд╕реВрд╕реА рдХреА:
http://twobitlabs.com/2011/08/install-diffmerge-git-mac-os-x/


Git рдФрд░ WinMerge


1) рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ c: / Git / libexec / git-core / mergetools /
рд╡рд┐рдирдорд░ рдлрд╝рд╛рдЗрд▓ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:

 diff_cmd () { "c:/Program Files (x86)/WinMerge/WinMergeU.exe" \ "$LOCAL" "$REMOTE" >/dev/null 2>&1 } merge_cmd () { "c:/Program Files (x86)/WinMerge/WinMergeU.exe" \ "$PWD/$LOCAL" "$PWD/$REMOTE" "$PWD/$MERGED" >/dev/null 2>&1 status=$? } 

рдЬрдм Git рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдорд░реНрдЬ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдорд░реНрдЬ рд╕рдВрдШрд░реНрд╖ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдорд░реНрдЬ рдЯреЛрдХрди рдХреЛ рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рдлрд╝рд╛рдЗрд▓ (<<<<<<<<, =======, рдФрд░ >>>>>>>) рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ рддреГрддреАрдп-рдкрдХреНрд╖ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдШрд░реНрд╖ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред
рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдорд╛рд╕реНрдЯрд░ рдФрд░ рдирдИ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдорд┐рд▓рд╛рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмрдирд╛рдИ рдЧрдИ readme.txt рдлрд╝рд╛рдЗрд▓ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

 <<<<<<< HEAD master str ======= new str >>>>>>> new 

рд╣рдо рд╕рдВрдШрд░реНрд╖ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП WinMerge рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдШрд░реНрд╖ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЦреБрд▓рд╛

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЯреВ-рд╡реЗ рдорд░реНрдЬ рдЯреВрд▓ рдЦреБрд▓рддрд╛ рд╣реИ:

WinMerge

рд╡рд░реНрдгрд┐рдд рддрд░реНрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдорд░реНрдЬ merge_cmd рдХрдорд╛рдВрдб рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВ:
 merge_cmd () { "c:/Program Files (x86)/WinMerge/WinMergeU.exe" \ "$MERGED" >/dev/null 2>&1 status=$? } 

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЙрдкрд░реЛрдХреНрдд рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк рд╕рдорд╛рди рд╣реИрдВред

2) рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ .itconfig
 [diff] tool = winmerge [difftool "winmerge"] cmd = "winmerge" [merge] tool = winmerge [mergetool "winmerge"] cmd = "winmerge" trustExitCode = false keepBackup = false 

рдЕрдВрддрд┐рдо рдкрдВрдХреНрддрд┐ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдмреИрдХрдЕрдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд░рджреНрдж рдХрд░рддрд╛ рд╣реИред

3) рдЪрд▓реЛ рджреЛ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╕рдордп рдПрдХ рд╕рдВрдШрд░реНрд╖ рдкреИрджрд╛ рдХрд░рддреЗ рд╣реИрдВ (рдбрд┐рдлрдорд╛рд░реНрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ)ред
 git difftool master new //    

Windiff

рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рд╡рд┐рд▓рдп рдХрд░рддреЗ рд╕рдордп рд╕рдВрдШрд░реНрд╖ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
 git mergetool 

WinMerge

рдЖрдЗрдП рд╣рдорд╛рд░реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рдмрд╛рдж, рд╕рдВрдШрд░реНрд╖ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
WinMerge рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдпрд╣рд╛рдБ рдЬрд╛рд╕реВрд╕реА:
http://stackoverflow.com/questions/636253/msys-git-merge-tool-command-options-issue

Source: https://habr.com/ru/post/In150001/


All Articles