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

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

git difftool master new

git merge new

рдорд░реНрдЬ рд╕рдВрдШрд░реНрд╖ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╣рдордиреЗ рдорд╛рдВрдЧрд╛ рд╣реИред
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 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдШрд░реНрд╖ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред

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

рд╡рд░реНрдгрд┐рдд рддрд░реНрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдорд░реНрдЬ
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

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

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