GIT - рдПрдХ рдмрд╛рд╣рд░реА рдбреАрдЖрдИрдПрдлрдПрдл рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ mcdiff рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

mcdiff


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



рдПрдХ рдмрд╛рд░ mcdif рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдиреЗ рдПрдХ рдмрд╛рд░ рдпрд╣рд╛рдВ рдХрд╣рд╛рдиреА рдмрддрд╛рдИ рдереА рд▓реЗрдХрд┐рди рдмрд┐рдВрджреБ рдХреЗ рдХрд░реАрдм ...


Git рдХреЛ mcdiff рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ


Git рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ mcdiff рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдПрдХ diff_wrapper рдЖрд╡рд░рдг рдЬрд┐рд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рд╣реЛрддреА рд╣реИ

#!/bin/sh /usr/bin/mcdiff "$1" "$2" 

рдлрд┐рд░ рдЗрд╕реЗ рд╕рд╣реЗрдЬреЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд╖реНрдкрд╛рджрди рдЕрдзрд┐рдХрд╛рд░ рджреЗрдиреЗ рдХреА рднреВрд▓ рдХрд┐рдП рдмрд┐рдирд╛ ~ / рдмрд┐рди / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (рдпрд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд┐рд╕реА рднреА рдЬрдЧрд╣) рдореЗрдВ
 chmod +x ~/bin/diff_wrapper 

рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЬрдм .itconfig рдлрд╝рд╛рдЗрд▓ рдореЗрдВ git diff рдХрдорд╛рдВрдб рдХреЛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд░реИрдкрд░ рдХреЙрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдореЗрд░реА .itconfig рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ
 [diff] external = /home/holmes/bin/diff_wrapper [pager] diff = 



-w рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЬреЛрдбрд╝рдХрд░, рдЖрдк рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдореЗрдВ рдЕрдВрддрд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
 git diff -w 

рд╣рд╛рд▓рд╛рдБрдХрд┐, mcdiff рд╕реНрд╡рдпрдВ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдзреНрдпрд╛рди рд░рдЦ рд╕рдХрддрд╛ рд╣реИ, рдмрд╕ F9 рджрдмрд╛рдПрдБ рдФрд░ рдЗрдЪреНрдЫрд┐рдд рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рддреБрд▓рдирд╛ рд╡рд┐рдХрд▓реНрдк рдЙрдкрд▓рдмреНрдз рд╣реИрдВ:
[x] рдорд╛рдорд▓реЗ рдкрд░ рдзреНрдпрд╛рди рди рджреЗрдВ
[x] рдЯреИрдм рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ
[x] рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рдзреНрдпрд╛рди рди рджреЗрдВ
[x] рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ
[x] рд▓рд╛рдЗрди рдлреАрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рди рдХрд░реЗрдВ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдкрдХреЛ рдмрд╛рд╣рд░реА рддреБрд▓рдирд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ -no-ext-diff рд╕реНрд╡рд┐рдЪ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛:
 git diff --no-ext-diff 

рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореИрдВ рдЬреЛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рд╡рд╣ рдЖрдВрд╢рд┐рдХ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рд▓рдп, mcdiff рдореЗрдВ F5 рдХреБрдВрдЬреА рдХрд╛ рдХрд╛рд░реНрдп рд╣реИред

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

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЧрд┐рдЯ рдореИрдиреБрдЕрд▓ рдкреЗрдЬ рдкрд░ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ ред

рдкреБрдирд╢реНрдЪ: рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдкрд╛рда рдореЗрдВ рдЯрд╛рдЗрдкреЛ рдкрд╛рддреЗ рд╣реИрдВ рдпрд╛ рдЗрд╕ рдиреЛрдЯ рдореЗрдВ рдХреБрдЫ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ...

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


All Articles