рдорд░реНрдЬ рдХреЗ рдкреНрд░рдХрд╛рд░
Git merge рдФрд░ rebase рд╡реЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЗ рдХрдорд┐рдЯреНрд╕ рдХреЛ рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдЧреЗ, Git merge рдпрд╛ рддреЛ fast-forward рдХрд░рддрд╛ рд╣реИ рдпрд╛ no-fast-forward merge рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХрд╛ head рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдорд░реНрдЬ рдЯрд╛рдЗрдк fast-forward рд╣реЛрдЧрд╛, рдФрд░ рдпрджрд┐ рдирд╣реАрдВ рд╣реИ, рддреЛ no-fast-forward рд╣реЛрдЧрд╛ред Git rebase рдПрдХ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд░реНрдЬ рд╣реИ рдЬреЛ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЗ рдХрдорд┐рдЯ рдЗрддрд┐рд╣рд╛рд╕ рдХрд╛ рдХреНрд░рдо рдмрджрд▓ рджреЗрддрд╛ рд╣реИред┬а
рдлрд╛рд╕реНрдЯ-рдлрд╝реЙрд░рд╡рд░реНрдб рдорд░реНрдЬ

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, Git merge рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдореМрдЬреВрдж рди рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдХрдорд┐рдЯреНрд╕ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП fast-forward рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, pull рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рд▓реЛрдХрд▓ рдмреНрд░рд╛рдВрдЪ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ред Fast-forward рдореЗрдВ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдЖрддреА рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХрд╛ head рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рддреЛ Git рдЗрд╕реЗ рд▓рд╛рдЧреВ рд╣реА рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред┬а
рдиреЛ-рдлрд╛рд╕реНрдЯ-рдлрд╝реЙрд░рд╡рд░реНрдб рдорд░реНрдЬ

No-fast-forward рдорд░реНрдЬ рдХреЛ three-way рдпрд╛ true merge рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реЛрд░реНрд╕ рдФрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рджреЛрдиреЛрдВ рдХреЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдкрд░ рдПрдХ рдирдпрд╛ рдХрдорд┐рдЯ рдмрдирд╛рддрд╛ рд╣реИред рдмрджрд▓рд╛рд╡ рджреЛрдиреЛрдВ рдмреНрд░рд╛рдВрдЪреЛрдВ рдХреЗ рдЕрдВрддрд┐рдо рдХреЙрдорди рдХрдорд┐рдЯ рдХреЗ рдмрд╛рдж рдорд┐рд▓рд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрд╣ C рдХреЗ рдмрд╛рдж рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд░реНрдЬ рддрдм Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рджрд┐рдЦрд╛рдПрдЧрд╛ рдЬрдм рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдФрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдЯрдХрд░рд╛рд╡ рд╣реЛред рдКрдкрд░ рджрд┐рдП рдЧрдП рдбрд╛рдпрдЧреНрд░рд╛рдо рдореЗрдВ, рдорд░реНрдЬ рдХрдорд┐рдЯ (X) рд╕реЛрд░реНрд╕ рдФрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЛ рдорд┐рд▓рд╛рдХрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдБ K рдФрд░ E рдорд░реНрдЬ рдХрдорд┐рдЯ рдХреЗ рдкреИрд░реЗрдВрдЯреНрд╕ рд╣реИрдВред┬а
рд░реАрдмреЗрд╕┬а

Git rebase рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░реЛрдВ рд╕реЗ рдереЛрдбрд╝рд╛ рднрд┐рдиреНрди рд╣реИред рдпрд╣ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЗ рдХрдорд┐рдЯ рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рдХреНрд░рдо рдХреЛ рдмрджрд▓рддрд╛ рд╣реИред Rebase рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдХрд┐ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдХреЗ рд╕рд╛рд░реЗ рдмрджрд▓рд╛рд╡ рд╣реЛрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЕрдВрддрд┐рдо рдХреЙрдорди рдХрдорд┐рдЯ рдХреЗ рдмрд╛рдж рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЗ рд╕рднреА рдХрдорд┐рдЯреНрд╕ред рд╣рдорд╛рд░реЗ рдХреЗрд╕ рдореЗрдВ рдЕрдВрддрд┐рдо рдХреЙрдорди рдХрдорд┐рдЯ C рд╣реИ, рдЬрдмрдХрд┐ D рдФрд░ E рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рд╕реЗ рд╣реИрдВред K* рдХрдорд┐рдЯ K рдЬреИрд╕рд╛ рд╣реА рд╣реИ рд▓реЗрдХрд┐рди рдХрдорд┐рдЯ ID рдЕрд▓рдЧ рд╣реИред рдпрд╣ C рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛрдиреЗ рдХреЗ рдмрдЬрд╛рдп E рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛрдЧрд╛ред No-fast-forward рдорд░реНрдЬ рдХреА рддрд░рд╣ рд╣реА, рдпрджрд┐ рд╕реЛрд░реНрд╕ рдФрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдЕрдиреБрдХреВрд▓рддрд╛ рд╕рдВрдмрдВрдзреА рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реИрдВ, рддреЛ Git рд░реАрдмреЗрд╕ рдХреЛ рдлрд╛рдЗрдирд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдЧрд╛ред┬а
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреЗ рдкреНрд░рдХрд╛рд░
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ: рд╢реБрд░реБрдЖрдд рдореЗрдВ рдФрд░ рдорд░реНрдЬрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди - Atlassianред рдЗрд╕ рдЦрдВрдб рдореЗрдВ, рд╣рдо рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдерд┐рддрд┐ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдиреЗрдВрдЧреЗред┬а
рдорд░реНрдЬ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ
рдпрджрд┐ рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдпрд╛ рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдПрд░рд┐рдпрд╛ рдореЗрдВ рдмрджрд▓рд╛рд╡ рд╣реИрдВ рддреЛ Git merge рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╣реА рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдЗрд╕рд▓рд┐рдП рд╡рд┐рдлрд▓ рд╣реЛрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдорд░реНрдЬ рдХрдорд┐рдЯреНрд╕ рдЖрдкрдХреЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рди рдХрд░ рджреЗрдВред рдпрд╣ рдЯрдХрд░рд╛рд╡ рдЕрдиреНрдп рдмреНрд░рд╛рдВрдЪреЛрдВ рдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд▓реЛрдХрд▓ рдмрджрд▓рд╛рд╡реЛрдВ рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рд▓реЛрдХрд▓ рд╕реНрдЯреЗрдЯ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк git stash, git commit, git checkout, рдпрд╛ git reset рдЬреИрд╕реЗ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдорд░реНрдЬ рдХреЗ рджреМрд░рд╛рди
рдорд░реНрдЬ рдХреЗ рджреМрд░рд╛рди рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕реЛрд░реНрд╕ рдФрд░ рдЯрд╛рд░реНрдЧреЗрдЯ рдмреНрд░рд╛рдВрдЪ рдХреЗ рдмреАрдЪ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╣реИ рдЬрд╣рд╛рдБ рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рд╣реИрдВред рдпрджрд┐ рдСрдЯреЛрдореЗрдЯрд┐рдХ рдорд░реНрдЬ рд╡рд┐рдлрд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ Git рдЖрдкрд╕реЗ рд╕рдорд╕реНрдпрд╛рдПрдБ рдореИрдиреНрдпреБрдЕрд▓реА рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдЧрд╛ред рдЖрдк рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝ рдФрд░ рдЗрдВрдЯреАрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рдЯреВрд▓реНрд╕ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдХрдорд╛рдВрдб
рдЗрд╕ рдЦрдВрдб рдореЗрдВ, рд╣рдо Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреЛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝ рдФрд░ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдиреЗрдЯрд┐рд╡ рдХрдорд╛рдВрдбреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдЦреЗрдВрдЧреЗред┬а
рдХреЙрдорди рдХрдорд╛рдВрдбреНрд╕
Git status рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдХрдорд╛рдВрдб рд╣реИ рдЬреЛ рдореЙрдбрд┐рдлрд╝рд╛рдЗрдб рдлрд╝рд╛рдЗрд▓реЛрдВ, рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдПрд░рд┐рдпрд╛ рдФрд░ рдХрдорд┐рдЯреНрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдорд░реНрдЬрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рдпрд╣ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдо рдЖрддрд╛ рд╣реИред┬а┬а
git status
--merge рдЖрд░реНрдЧреБрдореЗрдВрдЯ рдХреЗ рд╕рд╛рде Git log рд╕реЛрд░реНрд╕ рдмреНрд░рд╛рдВрдЪ рдХреЗ рд╕рд╛рде рдЯрдХрд░рд╛рд╡ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрдорд┐рдЯреНрд╕ рдХреА рд╕реВрдЪреА рдмрдирд╛рддрд╛ рд╣реИред┬а
git log --merge
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, git diff рд╡рд┐рдХрд▓реНрдк рдЖрдкрдХреЛ рдЕрдирдХрдореАрдЯреЗрдб рдмрджрд▓рд╛рд╡реЛрдВ рдФрд░ рдкрд┐рдЫрд▓реЗ рдХрдорд┐рдЯреНрд╕ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рджрд┐рдЦрд╛рдПрдЧрд╛ред Git diff рдмреНрд░рд╛рдВрдЪреЛрдВ, рдХрдорд┐рдЯреНрд╕ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рднрд╡рд┐рд╖реНрдп рдХреЗ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреЛ рд░реЛрдХрдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реИред┬а
git diff
рдЬрдм рдорд░реНрдЬ рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ
Checkout рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓реЗрдиреЗ рдпрд╛ рдирдИ/рдкреБрд░рд╛рдиреА рдмреНрд░рд╛рдВрдЪ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред┬а
git checkout
Git reset рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдФрд░ рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдПрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рдП рдЧрдП рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд░рд┐рд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИред┬а
git reset --mixed
рдЬрдм рдорд░реНрдЬ рдХреЗ рджреМрд░рд╛рди рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╣реЛ
--abort рдЖрд░реНрдЧреБрдореЗрдВрдЯ рдорд░реНрдЬ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд░реЛрдХ рджреЗрдЧрд╛ рдФрд░ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдЙрд╕ рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛ рджреЗрдЧрд╛ рдЬреЛ рдорд░реНрдЬ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдереАред┬а
git merge --abort
рдорд░реНрдЬрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди Git reset рдЖрдорддреМрд░ рдкрд░ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреЗрдб рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрдирдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╛рдкрд╕ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИред
git reset
deleted-modified рдлрд╝рд╛рдЗрд▓ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдПрдБ
Git рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рддрдм рд╣реЛрдЧрд╛ рдЬрдм рдЖрдкрдиреЗ рд╡рд░реНрддрдорд╛рди рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдбрд┐рд▓реАрдЯ рдХрд░ рджреА рд╣реЛ рдФрд░ рдХрд┐рд╕реА рдФрд░ рдиреЗ рджреВрд╕рд░реА рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдЙрд╕реЗ рдореЙрдбрд┐рдлрд╝рд╛рдИ рдХрд┐рдпрд╛ рд╣реЛред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрдк рдпрд╛ рддреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдРрдб рдХрд░рдХреЗ рдХрдорд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ,
git add <filename>
рдпрд╛ рдЖрдк рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛ рдХрд░ рдХрдорд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред┬а
git rm <filename>
ЁЯУМ Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд░реЗрдЬрд╝реЛрд▓реНрдпреВрд╢рди рдЪреАрдЯ рд╢реАрдЯ
| рдХрдорд╛рдВрдб | рд╡рд┐рд╡рд░рдг | рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ |
|---|---|---|
git status | рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЗрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ | git status |
git diff | рдХрдорд┐рдЯреНрд╕ рдпрд╛ рдмреНрд░рд╛рдВрдЪреЛрдВ рдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░ рджрд┐рдЦрд╛рддрд╛ рд╣реИ | git diff HEAD |
git log --merge | рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрдорд┐рдЯреНрд╕ рджрд┐рдЦрд╛рддрд╛ рд╣реИ | git log --merge |
git merge --abort | рдорд░реНрдЬ рд░рджреНрдж рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдмрд╣рд╛рд▓ рдХрд░рддрд╛ рд╣реИ | git merge --abort |
git reset --hard HEAD | рдмреНрд░рд╛рдВрдЪ рдХреЛ рдЕрдВрддрд┐рдо рдХрдорд┐рдЯреЗрдб рд╕реНрдерд┐рддрд┐ рдкрд░ рд░реАрд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ | git reset --hard HEAD |
git checkout -- <filename> | рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрд┐рдП рдмрджрд▓рд╛рд╡ рддреНрдпрд╛рдЧрддрд╛ рд╣реИ | git checkout -- README.md |
git mergetool | рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд░реЗрдЬрд╝реЛрд▓реНрдпреВрд╢рди рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реНрдб рдорд░реНрдЬ рдЯреВрд▓ рдЦреЛрд▓рддрд╛ рд╣реИ | git mergetool |
git add <filename> | рдПрдбрд┐рдЯрд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреЛ resolved рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИ | git add README.md |
git commit -m "<message>" | рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдмрджрд▓рд╛рд╡ рд╕реЗрд╡ рдХрд░рддрд╛ рд╣реИ | git commit -m "Resolved merge conflict" |
git rebase --continue | рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд░реБрдХреЗ рд╣реБрдП рд░реАрдмреЗрд╕ рдХреЛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ | git rebase --continue |
git rm <filename> | рдРрд╕реА рдлрд╝рд╛рдЗрд▓ рд╣рдЯрд╛рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдбрд┐рд▓реАрдЯ рдФрд░ рджреВрд╕рд░реА рдореЗрдВ рдореЙрдбрд┐рдлрд╝рд╛рдИ рд╣реБрдИ рд╣реЛ | git rm README.md |
git push | рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдмрджрд▓рд╛рд╡ рдкреБрд╢ рдХрд░рддрд╛ рд╣реИ | git push origin main |
рд╡рд┐рдЬрд╝реБрдЕрд▓ рдорд░реНрдЬ рдЯреВрд▓реНрд╕
рдорд░реНрдЬ рдЯреВрд▓реНрд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреА рдкрд╣рдЪрд╛рди рдФрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЯреВрд▓реНрд╕ рд╣реИрдВред рдХреБрдЫ рдЯреВрд▓реНрд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖рдорддрд╛рдПрдБ рднреА рджреЗрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рддреБрд▓рдирд╛, Git рдСрдкрд░реЗрд╢рдиреНрд╕, рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ/рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкреНрд░рдмрдВрдзрдиред Git рдорд░реНрдЬ рдЯреВрд▓реНрд╕ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ: рдХреЗрд╡рд▓ рдЯрд░реНрдорд┐рдирд▓ рдФрд░ GUI-рдЖрдзрд╛рд░рд┐рддред рдЯрд░реНрдорд┐рдирд▓-рдЖрдзрд╛рд░рд┐рдд рдЯреВрд▓ PowerShell рдпрд╛ Bash рдореЗрдВ рдЦреБрд▓рддреЗ рд╣реИрдВ, рдФрд░ GUI-рдЖрдзрд╛рд░рд┐рдд рдЯреВрд▓ рд╡рд┐рдВрдбреЛ рд╡рд╛рд▓реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЦреБрд▓рддреЗ рд╣реИрдВред┬а
рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдФрд░ рд╡реИрдз рдЯреВрд▓реНрд╕ рдХреА рд╕реВрдЪреА рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
git mergetool --tool-help
рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рд╡реЗ рд╕рднреА рд╡реИрдз рдЯреВрд▓реНрд╕ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ git рдХрдорд╛рдВрдбреНрд╕ рдХреЗ рд╕рд╛рде рдЗрдВрдЯреАрдЧреНрд░реЗрдЯ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ vim рдФрд░ nvim рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реИрдВ, рдФрд░ рдпрджрд┐ рдЖрдк рдЕрдирдХрдореАрдЯреЗрдб рдлрд╝рд╛рдЗрд▓ рдФрд░ рдкрд┐рдЫрд▓реЗ рдХрдорд┐рдЯ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд▓рд┐рдЦреЗрдВ:
git difftool --tool=vimdiff3
vimdiff3 рдЯреВрд▓ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рднреАрддрд░ рдХрдорд┐рдЯреНрд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИред┬а

рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ (vimdiff3)
Meld
Meld рдПрдХ рдореБрдлрд╝реНрдд рдФрд░ рдУрдкрди-рд╕реЛрд░реНрд╕ рдЯреВрд▓ рд╣реИ рдЬреЛ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рдЕрдЧрд▓реЗ рд╕реНрддрд░ рдкрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИред Git рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдЗрдВрдЯреАрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рд╕реЗрдЯрдЕрдк рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред рдЕрдЧрд▓рд╛, рдЗрд╕реЗ рдЧреНрд▓реЛрдмрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рддрд╛рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ Git рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП Meld рд▓реЙрдиреНрдЪ рдХрд░реЗред┬а┬а
рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЙрдиреНрдлрд╝рд┐рдЧ рдХрдорд╛рдВрдбреНрд╕ рдХреЗрд╡рд▓ Windows рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред Mac рдпрд╛ Linux рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЗрд╡рд▓ Meld рдХреА рдЗрдВрд╕реНрдЯреЙрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкрд╛рде рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред┬а
git config --global merge.tool meld
git config --global mergetool.meld.path "C:/Program Files (x86)/Meld/Meld.exe"
git config --global diff.tool meld
git config --global difftool.meld.path "C:/Program Files (x86)/Meld/Meld.exe"
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрдЕрдк рдХреЗ рдмрд╛рдж, рдЖрдк Git рдХреА рд▓реЛрдХрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ git difftool рдЯрд╛рдЗрдк рдХрд░рдХреЗ Windows рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ Meld рд▓реЙрдиреНрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ git mergetool рдЪрд▓рд╛рдХрд░ рдиреАрдЪреЗ рджрд┐рдЦрд╛рдП рдЕрдиреБрд╕рд╛рд░ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛ рд╕рдХрддреЗ рд╣реИрдВред

Meld рдХреЗ рд╕рд╛рде рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдирд╛
VSCode
VSCode рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдФрд░ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╝рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЬрдм Git рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдкрдиреЗ рдЖрдк рдорд░реНрдЬ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ, рддреЛ VSCode рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреЗрдб рдХреЛрдб рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЪрд╛рд░ рд╡рд┐рдХрд▓реНрдк рджреЗрддрд╛ рд╣реИ: рд╡рд░реНрддрдорд╛рди рдмрджрд▓рд╛рд╡ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ, рдЖрдиреЗ рд╡рд╛рд▓реЗ рдмрджрд▓рд╛рд╡ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ, рджреЛрдиреЛрдВ рдмрджрд▓рд╛рд╡ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ, рдФрд░ рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВред рдЖрдк рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рднреА рд▓рдВрдмрд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред┬а

VSCode рдХреЗ рд╕рд╛рде рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдирд╛
рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ Git рдСрдкрд░реЗрд╢рдиреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ GitKraken рдЖрдЬрд╝рдорд╛рдПрдБред рдпрд╣ рдПрдХ рдореБрдлрд╝реНрдд рдХреНрд▓рд╛рдЗрдВрдЯ, VSCode рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ, рдФрд░ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдЯ-рдЗрди рдЯреВрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред┬а┬а
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреИрд╕реЗ рд╕реБрд▓рдЭрд╛рдПрдБ
рдЗрд╕ рдЦрдВрдб рдореЗрдВ, рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреИрд╕реЗ рдмрдирд╛рдПрдБ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕реБрд▓рдЭрд╛рдПрдБред рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рджреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИред рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ, рд╣рдо рд▓реЛрдХрд▓ рд░реВрдк рд╕реЗ Git рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдирд╛ рд╕реАрдЦреЗрдВрдЧреЗ; рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ (GitHub) рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреА рдмрд╛рдд рд╣реЛрдЧреАред
рд▓реЛрдХрд▓ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ
рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдмрдирд╛рдирд╛ рд╣рдореЗрдВ рдпрд╣ рд╕реАрдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдХрд┐ рдпреЗ рд╕рдорд╕реНрдпрд╛рдПрдБ рдкрд╣рд▓реА рдЬрдЧрд╣ рдкрд░ рдХреИрд╕реЗ рдкреИрджрд╛ рд╣реЛрддреА рд╣реИрдВред рдлрд┐рд░ рд╣рдо рдЗрдиреНрд╣реЗрдВ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд░рдЪрдирд╛рддреНрдордХ рддрд░реАрдХреЗ рдЕрдкрдирд╛рдПрдВрдЧреЗ рдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрдирд╕реЗ рдмрдЪреЗрдВрдЧреЗред┬а
рдЕрдм рд╣рдо рдПрдХ Git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдмрдирд╛рдПрдБрдЧреЗ рдФрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ рдХрдорд┐рдЯ рдХрд░реЗрдВрдЧреЗред┬а
- datacamp рдирд╛рдо рдХрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдБред
- рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдмрджрд▓рдХрд░ datacamp рдкрд░ рдЬрд╛рдПрдБред
- Git рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред
README.mdрдлрд╝рд╛рдЗрд▓ рджрд┐рдП рдЧрдП рд╢реАрд░реНрд╖рдХ рдХреЗ рд╕рд╛рде рдмрдирд╛рдПрдБред- рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд╕реНрдЯреЗрдЬ рдХрд░реЗрдВ рдФрд░ рдХрдорд┐рдЯ рдХрд░реЗрдВред
mkdir datacamp
cd datacamp
git init
echo "# How to Resolve Git Merge Conflict" > README.md
git add README.md
git commit -m "first commit"
>>> [main (root-commit) 8199ea2] first commit
>>> 1 file changed, 1 insertion(+)
>>> create mode 100644 README.md
рдЕрдЧрд▓реЗ рдЪрд░рдг рдореЗрдВ, рд╣рдо readme рдирд╛рдо рдХреА рдирдИ рдмреНрд░рд╛рдВрдЪ рдмрдирд╛рдПрдБрдЧреЗ рдФрд░ рд╢реАрд░реНрд╖рдХ рдХреЛ тАЬ..Git Merge..тАЭ рд╕реЗ тАЬ..Git..тАЭ рдореЗрдВ рдмрджрд▓реЗрдВрдЧреЗред рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реЗрдВ рдФрд░ -am рдЖрд░реНрдЧреБрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдорд┐рдЯ рдмрдирд╛рдПрдБред
git checkout -b readme
echo "# How to Resolve Git Conflict" > README.md
git commit -am "new branch conflict added"
>>> [readme 155f694] new branch conflict added
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
рдореБрдЦреНрдп рдмреНрд░рд╛рдВрдЪ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдБ рдФрд░ README.md рдлрд╝рд╛рдЗрд▓ рдореЗрдВ >> рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдИ рд▓рд╛рдЗрди рдЬреЛрдбрд╝реЗрдВред рдмрджрд▓рд╛рд╡ рд╕реЗрд╡ рдХрд░ рдХреЗ рдХрдорд┐рдЯ рдмрдирд╛рдиреЗ рд╕реЗ, рд╣рдордиреЗ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдмрдирд╛ рд▓рд┐рдпрд╛ рд╣реИред┬а
git checkout main
echo "New change in base branch" >> README.md
git commit -am " a line added to base branch Readme file"
>>> [main f1f1874] a line added to base branch Readme file
>>> 1 file changed, 1 insertion(+)
рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ, readme рдмреНрд░рд╛рдВрдЪ рдХреЛ рдорд░реНрдЬ рдХрд░рддреЗ рд╕рдордп Git рдиреЗ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рдСрдЯреЛрдореЗрдЯрд┐рдХ рдорд░реНрдЬ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдореИрдиреНрдпреБрдЕрд▓реА рдмрджрд▓рд╛рд╡ рдХрд░рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХрдорд┐рдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред┬а
git merge readme
>>> Auto-merging README.md
>>> CONFLICT (content): Merge conflict in README.md
>>> Automatic merge failed; fix conflicts and then commit the result.
рд╣рдо Notepad рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдХрд░ рдФрд░ рдПрдбрд┐рдЯ рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓реА рд╕реБрд▓рдЭрд╛рдПрдБрдЧреЗред рдиреАрдЪреЗ рдХреА рдЫрд╡рд┐ рдореЗрдВ HEAD рдХреЗ рд╕рд╛рде рддреАрд░, рдПрдХ рдбрд┐рд╡рд╛рдЗрдбрд░, рдФрд░ рджреВрд╕рд░реА рджрд┐рд╢рд╛ рдореЗрдВ readme рдХреЗ рд╕рд╛рде рддреАрд░ рджрд┐рдЦрддрд╛ рд╣реИред HEAD рднрд╛рдЧ рдореБрдЦреНрдп рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдореМрдЬреВрдж рдмрджрд▓рд╛рд╡ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдФрд░ readme рд╡рд╣ рдмреНрд░рд╛рдВрдЪ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдорд░реНрдЬ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЕрд▓рдЧ рд╣реЗрдбрд┐рдВрдЧ рд╣реИред┬а
рдореИрдиреНрдпреБрдЕрд▓реА рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдирд╛┬а
рд╕рдорд╕реНрдпрд╛ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо readme рдмреНрд░рд╛рдВрдЪ рдХрд╛ рднрд╛рдЧ, рддреАрд░ рдФрд░ рдбрд┐рд╡рд╛рдЗрдбрд░ рд╣рдЯрд╛ рджреЗрдВрдЧреЗред рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рдиреАрдЪреЗ рджрд┐рдЦрд╛рдП рдЕрдиреБрд╕рд╛рд░ рд╕рд╛рдлрд╝ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред┬а

рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭ рдЧрдпрд╛┬а
рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдХрдорд┐рдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрдо рдФрд░ рд╕рд░рд▓ рддрд░реАрдХрд╛ рд╣реИред рдЖрдк рдХреЛрдИ рдЗрдВрдЯреАрдЧреНрд░реЗрдЯреЗрдб рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдПрдВрд╡рд╛рдпрд░рдирдореЗрдВрдЯ (IDE) рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╕рдорд╕реНрдпрд╛рдПрдБ рддреЗрдЬрд╝реА рд╕реЗ рд╕реБрд▓рдЭреЗрдВред
git commit -am "conflict resolved in file README.md"
>>> [main 9994a29] conflict resolved in file README.md
рд░рд┐рдореЛрдЯ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ
рд░рд┐рдореЛрдЯ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдмрдирд╛рдиреЗ рдФрд░ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ GitHub рдкрд░ рдПрдХ рдирдпрд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред

GitHub рдкрд░ рдирдпрд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдирд╛
рдЗрд╕рдХреЗ рдмрд╛рдж, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рдкрддреЗ рдХреЗ рд╕рд╛рде рд░рд┐рдореЛрдЯ рдирд╛рдо (origin) рдЬреЛрдбрд╝реЗрдВ рдФрд░ upstream рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЛрдХрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рд░рд┐рдореЛрдЯ main рдмреНрд░рд╛рдВрдЪ рдкрд░ рд╕рднреА рдмрджрд▓рд╛рд╡ рдкреБрд╢ рдХрд░реЗрдВред
git remote add origin https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
git push --set-upstream origin main
>>> Enumerating objects: 12, done.
>>> Counting objects: 100% (12/12), done.
>>> Delta compression using up to 4 threads
>>> Compressing objects: 100% (6/6), done.
>>> Writing objects: 100% (12/12), 998 bytes | 499.00 KiB/s, done.
>>> Total 12 (delta 2), reused 0 (delta 0), pack-reused 0
>>> remote: Resolving deltas: 100% (2/2), done.
>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>> * [new branch] main -> main
>>> branch 'main' set up to track 'origin/main'.
рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рд░рд┐рдореЛрдЯ рдФрд░ рд▓реЛрдХрд▓ рджреЛрдиреЛрдВ README.md рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред рдЖрдк GitHub рдлрд╝рд╛рдЗрд▓ рдПрдбрд┐рдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ тАЬ..Git merge..тАЭ рдХреЛ тАЬ..Sit-Merge..тАЭ рдореЗрдВ рдмрджрд▓реЗрдВ рдФрд░ рдлрд┐рд░ рдмрджрд▓рд╛рд╡ рдХрдорд┐рдЯ рдХрд░реЗрдВред┬а

GitHub рдПрдбрд┐рдЯрд░ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рдирд╛
рдлрд┐рд░, рд▓реЛрдХрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ, README.md рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрджрд▓рдХрд░ рдХреЗрд╡рд▓ рдПрдХ рд╕рд░рд▓ рд╢реАрд░реНрд╖рдХ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдмрджрд▓рд╛рд╡ рдХрдорд┐рдЯ рдХрд░реЗрдВред┬а
echo "# How to Resolve Merge Conflicts in Git Tutorial" > README.md
git commit -am "local branch changes in README.md"
>>> [main c677a13] local branch changes in README.md
>>> 1 file changed, 1 insertion(+), 4 deletions(-)
рдЕрдВрдд рдореЗрдВ, рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдкреБрд╢ рдХрд░реЗрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ Git рдиреЗ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рд╣реИ рдФрд░ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рд╕рдВрдХреЗрдд рджрд┐рдП рд╣реИрдВред┬а
git push
>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>> ! [rejected] main -> main (fetch first)
>>> error: failed to push some refs to 'https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git'
>>> hint: Updates were rejected because the remote contains work that you do
>>> hint: not have locally. This is usually caused by another repository pushing
>>> hint: to the same ref. You may want to first integrate the remote changes
>>> hint: (e.g., 'git pull ...') before pushing again.
>>> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
рд╣рдо рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕рдВрдХреЗрдд рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВрдЧреЗ, рдпрд╛рдиреА рдкреБрд╢ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рдХреЛ pull рдХрд░реЗрдВрдЧреЗред┬а
Pull рдХрд░рддреЗ рд╕рдордп README.md рдореЗрдВ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреЗ рдХрд╛рд░рдг рд╡рд┐рдлрд▓рддрд╛ рд╣реБрдИред рд╣рдо Notepad рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓реА рдареАрдХ рдХрд░ рд╕рдХрддреЗ рдереЗ, рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред┬а
git pull
>>> remote: Enumerating objects: 5, done.
>>> remote: Counting objects: 100% (5/5), done.
>>> remote: Compressing objects: 100% (2/2), done.
>>> remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
>>> Unpacking objects: 100% (3/3), 681 bytes | 75.00 KiB/s, done.
>>> From https://github.com/kingabzpro/DataCamp-Git-Merge-Guide
>>> aaf149d..49b7d14 main -> origin/main
>>> Auto-merging README.md
>>> CONFLICT (content): Merge conflict in README.md
>>> Automatic merge failed; fix conflicts and then commit the result.
Merge рдЯреВрд▓ Meld рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреЗрдб рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░реЗрдЧрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ Meld GUI рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рджрд┐рдЦрд╛рдПрдЧрд╛ред┬а┬а┬а
git mergetool
>>> Merging:
>>> README.md
>>> Normal merge conflict for 'README.md':
>>> {local}: modified file
>>> {remote}: modified file
рддреАрди рдХреЙрд▓рдо рд╣реЛрддреЗ рд╣реИрдВ: README_LOCAL_473.md, README.md, рдФрд░ README_LOCAL_473.mdред рдпрджрд┐ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдореЛрдЯ рдмрджрд▓рд╛рд╡ рд╕рд╣реА рд╣реИрдВ, рддреЛ рд░рд┐рдореЛрдЯ рдХреЙрд▓рдо рдореЗрдВ рдХрд╛рд▓реЗ рддреАрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ; рдФрд░ рдпрджрд┐ рдЖрдк рд▓реЛрдХрд▓ рдмрджрд▓рд╛рд╡ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд▓реЛрдХрд▓ рдХреЙрд▓рдо рдореЗрдВ рдХрд╛рд▓реЗ рддреАрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЗрддрдирд╛ рд╣реА рд╕рд░рд▓ рд╣реИред┬а

Merge рдЯреВрд▓ Meld рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдирд╛
рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдлрд╝рд╛рдЗрд▓ рд╕реЗрд╡ рдХрд░реЗрдВ рдФрд░ рдХрдорд┐рдЯ рдХрд░реЗрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдкреБрд╢ рдХрд░рддреЗ рд╕рдордп рдЕрдм рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдЖрддреАред
git commit -am "remote main branch conflict resolved"
git push
>>> Enumerating objects: 16, done.
>>> Counting objects: 100% (16/16), done.
>>> Delta compression using up to 4 threads
>>> Compressing objects: 100% (6/6), done.
>>> Writing objects: 100% (10/10), 1.08 KiB | 550.00 KiB/s, done.
>>> Total 10 (delta 2), reused 0 (delta 0), pack-reused 0
>>> remote: Resolving deltas: 100% (2/2), completed with 1 local object.
>>> To https://github.com/kingabzpro/DataCamp-Git-Merge-Guide.git
>>> 49b7d14..8f5c3aa main -> main
рд╣рдордиреЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓реЛрдХрд▓ рдФрд░ рд░рд┐рдореЛрдЯ рджреЛрдиреЛрдВ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛ рд▓рд┐рдП рд╣реИрдВред рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрдЯрд┐рд╕реНрдЯреНрд╕ рдФрд░ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдЗрдВрдЬреАрдирд┐рдпрд░реНрд╕ рд░реЛрдЬрд╝рд╛рдирд╛ рдЗрди рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реЗ рдирд┐рдкрдЯрддреЗ рд╣реИрдВред Git рдСрдкрд░реЗрд╢рдиреНрд╕ рдореЗрдВ рдЕрдкрдиреА рджрдХреНрд╖рддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП Introduction to Git рдХреЛрд░реНрд╕ рдХрд░реЗрдВред┬а
рдирд┐рд╖реНрдХрд░реНрд╖
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдирд╛ рдПрдХ рдЬрдЯрд┐рд▓ рдФрд░ рдЬреЛрдЦрд┐рдорднрд░рд╛ рдХрд╛рд░реНрдп рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рджреЛрд╖рдкреВрд░реНрдг рдХреЛрдб рдорд░реНрдЬ рдХрд░рдиреЗ рд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЯреВрдЯ рд╕рдХрддрд╛ рд╣реИред рдорд░реНрдЬ рдЯреВрд▓реНрд╕ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рджреЗрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдФрд░ рд╕реБрд▓рдЭрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рд╣рдордиреЗ рджреЗрдЦрд╛ рдХрд┐ Git рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреНрдпреЛрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕реБрд▓рдЭрд╛рдпрд╛ рдЬрд╛рдПред рд╣рдордиреЗ рд╡рд┐рднрд┐рдиреНрди рдорд░реНрдЬ рдФрд░ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдкреНрд░рдХрд╛рд░, рдЙрдкрдпреЛрдЧреА Git рдХрдорд╛рдВрдбреНрд╕, рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЯреВрд▓реНрд╕ рднреА рдХрд╡рд░ рдХрд┐рдПред рдЕрдВрддрд┐рдо рдЦрдВрдб рдореЗрдВ, рд╣рдордиреЗ рдПрдХ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдмрдирд╛рдпрд╛ рдФрд░ рдЙрд╕реЗ рд▓реЛрдХрд▓ рд╡ рд░рд┐рдореЛрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╕реБрд▓рдЭрд╛рдпрд╛ред┬а
рдпрджрд┐ рдЖрдк Git рдореЗрдВ рдирдП рд╣реИрдВ рдФрд░ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдкрдврд╝реЗрдВ: Intro to Git and GitHub Tutorialред┬а
рдПрдХ рдкреНрд░рдорд╛рдгрд┐рдд рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрдЯрд┐рд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЕрддреНрдпрд╛рдзреБрдирд┐рдХ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╡рд╛рдЪрд╛рд░реА рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕рд╛рд╣рд┐рдд рд░рд╣рддрд╛/рд░рд╣рддреА рд╣реВрдБред рд╕реНрдкреАрдЪ рд░рд┐рдХреЙрдЧреНрдирд┐рд╢рди, рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ, MLOps, рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ AI рдФрд░ NLP рдореЗрдВ рдордЬрдмреВрдд рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд╕рд╛рде, рдореИрдВрдиреЗ рдРрд╕реЗ рдмреБрджреНрдзрд┐рдорд╛рди рд╕рд┐рд╕реНрдЯрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдирд┐рдЦрд╛рд░реА рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓ рд╕рдХреЗрдВред рддрдХрдиреАрдХреА рджрдХреНрд╖рддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдЬрдЯрд┐рд▓ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдореЗрдВ рднреА рдирд┐рдкреБрдг рд╣реВрдБред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореИрдВ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдкрд░ рдПрдХ рдорд╛рдВрдЧ рдореЗрдВ рд░рд╣рдиреЗ рд╡рд╛рд▓рд╛/рд╡рд╛рд▓реА рдмреНрд▓реЙрдЧрд░ рдмрди рдЧрдпрд╛/рдЧрдИ рд╣реВрдБ, рдФрд░ рдбреЗрдЯрд╛ рдкреНрд░реЛрдлреЗрд╢рдирд▓реЛрдВ рдХреЗ рдмрдврд╝рддреЗ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдФрд░ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛/рдХрд░рддреА рд╣реВрдБред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдореИрдВ рдХрдВрдЯреЗрдВрдЯ рдирд┐рд░реНрдорд╛рдг рдФрд░ рд╕рдВрдкрд╛рджрди рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реВрдБ, рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП рдРрд╕рд╛ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдФрд░ рдЖрдХрд░реНрд╖рдХ рдХрдВрдЯреЗрдВрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣рд╛/рд░рд╣реА рд╣реВрдБ рдЬреЛ рд╡реНрдпрд╡рд╕рд╛рдпреЛрдВ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рджреЛрдиреЛрдВ рдХреЛ рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдзрд┐рдХрддрдо рд▓рд╛рдн рдЙрдард╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХреЗред
FAQs
Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд░реНрд╡реЛрддреНрддрдо рдЙрдкрд╛рдп рдХреНрдпрд╛ рд╣реИрдВ?
рдЬреЛрдЦрд┐рдо рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:
- рдирдП рдХрд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдкрд╣рд▓реЗ рд╣рдореЗрд╢рд╛ рддрд╛рдЬрд╝рд╛ рдмрджрд▓рд╛рд╡ pull рдХрд░реЗрдВ (
git pull origin main)ред - рдЕрдкрдиреА рдЯреАрдо рд╕реЗ рд╕рдВрд╡рд╛рдж рдХрд░реЗрдВ рддрд╛рдХрд┐ рдПрдХ рд╣реА рдХреЛрдб рдХреА рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдмрдЪреЗрдВред
- рдЫреЛрдЯреЗ, рдмрд╛рд░-рдмрд╛рд░ рдХрдорд┐рдЯ рдХрд░реЗрдВтАФрдмрдбрд╝реЗ, рдЬрдЯрд┐рд▓ рдХрдорд┐рдЯреНрд╕ рд╕реЗ рдмреЗрд╣рддрд░ред
- рдлрд╝реАрдЪрд░ рдмреНрд░рд╛рдВрдЪреЗрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд╕реАрдзреЗ
mainрдкрд░ рдХрдорд┐рдЯ рди рдХрд░реЗрдВред - рдорд░реНрдЬ рд╕реЗ рдкрд╣рд▓реЗ
git diffрдЪрд▓рд╛рдПрдБ рддрд╛рдХрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдЬрд▓реНрдж рджрд┐рдЦ рдЬрд╛рдПрдБред
рдХреНрдпрд╛ рдореИрдВ рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рдмрд┐рдирд╛ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛ рд╕рдХрддрд╛/рд╕рдХрддреА рд╣реВрдБ?
рд╣рд╛рдБ! рдХрдИ GUI-рдЖрдзрд╛рд░рд┐рдд Git рдЯреВрд▓реНрд╕ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд░реЗрдЬрд╝реЛрд▓реНрдпреВрд╢рди рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ:
- VS Code: рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреЛ "Accept Incoming" рдФрд░ "Accept Current" рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИред
- GitKraken: рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджреЗрддрд╛ рд╣реИред
- Meld / Beyond Compare: рд╡рд┐рдЬрд╝реБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдВрддрд░ рддреБрд▓рдирд╛ рдФрд░ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рд╕рд╣рд╛рдпрдХ рдорд░реНрдЬ рдЯреВрд▓реНрд╕ред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реНрдб рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЯреВрд▓ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП
git mergetoolрдЪрд▓рд╛рдПрдБред
рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдореБрдЭреЗ рдмрд╛рд░-рдмрд╛рд░ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреНрдпреЛрдВ рдорд┐рд▓рддреЗ рд╣реИрдВ?
рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рд░рдг:
- рдЖрдк рд╕реНрдЯреЗрдЬ (
git add) рдФрд░ рдХрдорд┐рдЯ (git commit -m "Resolved conflict") рдХрд░рдирд╛ рднреВрд▓ рдЧрдПред - рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рдж рдХрд┐рд╕реА рд╕рд╣рдпреЛрдЧреА рдиреЗ рдирдП рдЯрдХрд░рд╛рддреЗ рдмрджрд▓рд╛рд╡ рдкреБрд╢ рдХрд░ рджрд┐рдПред
git pull --rebaseрдЖрдЬрд╝рдорд╛рдПрдБред - рдЖрдкрдиреЗ рдкреБрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдлрд┐рд░ рд╕реЗ рдорд░реНрдЬ рдХрд░рдиреЗ рд▓рдЧреЗред рд╣рдореЗрд╢рд╛ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рдмрд╛рдж
git pushрдЪрд▓рд╛рдПрдБред
рдпрджрд┐ рдореИрдВ рдЧрд▓рддреА рд╕реЗ git merge --abort рдЪрд▓рд╛ рджреВрдБ рддреЛ рдХреНрдпрд╛ рдХрд░реВрдБ?
рдпрджрд┐ рдЖрдкрдиреЗ рдорд░реНрдЬ рдЕрдмреЙрд░реНрдЯ рдХрд░ рджрд┐рдпрд╛ рдФрд░ рджреЛрдмрд╛рд░рд╛ рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк:
- рд╕реАрдзреЗ рдорд░реНрдЬ рдХрдорд╛рдВрдб рдлрд┐рд░ рдЪрд▓рд╛рдПрдБ (
git merge <branch-name>)ред git reflogрд╕реЗ рдЕрдмреЙрд░реНрдЯ рд╕реЗ рдкрд╣рд▓реЗ рдХреА рд╕реНрдерд┐рддрд┐ рджреЗрдЦреЗрдВ рдФрд░ рдЬрд╝рд░реВрд░рдд рд╣реЛ рддреЛ рдЙрд╕реЗ рдмрд╣рд╛рд▓ рдХрд░реЗрдВред
рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рддреЗ рд╕рдордп рдХреА рдЧрдИ рдЧрд▓рддреА рдХреИрд╕реЗ рдЙрд▓рдЯреЗрдВ?
рдпрджрд┐ рдЖрдкрдиреЗ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд░реЗрдЬрд╝реЛрд▓реНрдпреВрд╢рди рдореЗрдВ рдЧрд▓рддреА рдХрд░ рджреА:
git reset --hard HEADрдЪрд▓рд╛рдХрд░ рд╕рднреА рдмрджрд▓рд╛рд╡ рдЫреЛрдбрд╝реЗрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВредgit checkout -- <filename>рд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓реЗрдВ рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдБред- рдпрджрд┐ рдЧрд▓рддреА рдкрд╣рд▓реЗ рд╣реА рдХрдорд┐рдЯ рд╣реЛ рдЧрдИ рд╣реИ, рддреЛ
git revert <commit-hash>рд╕реЗ рдмрджрд▓рд╛рд╡ рдЙрд▓рдЯрдиреЗ рд╡рд╛рд▓рд╛ рдирдпрд╛ рдХрдорд┐рдЯ рдмрдирд╛рдПрдБред
рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреИрд╕реЗ рд╕реБрд▓рдЭрд╛рдПрдБ?
Git рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдкрдиреЗ рдЖрдк рдорд░реНрдЬ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (рдЬреИрд╕реЗ, рдЗрдореЗрдЬ, PDFs)ред рд╕рдорд╛рдзрд╛рди:
- рдореИрдиреНрдпреБрдЕрд▓реА рддрдп рдХрд░реЗрдВ рдХрд┐ рдХреМрди-рд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рд░рдЦрдирд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдмрджрд▓реЗрдВред
git checkout --theirs <filename>рдпрд╛git checkout --ours <filename>рд╕реЗ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рд░рдЦреЗрдВред- рд░рд┐рдЬрд╝реЙрд▓реНрд╡реНрдб рдлрд╝рд╛рдЗрд▓ рдХрдорд┐рдЯ рдХрд░реЗрдВ (
git add <filename> && git commit -m "Resolved binary file conflict")ред
git merge --abort рдФрд░ git reset --merge рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ?
git merge --abort: рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдорд░реНрдЬ рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмреНрд░рд╛рдВрдЪ рдХреЛ рдорд░реНрдЬ рд╕реЗ рдкрд╣рд▓реЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рддрд╛ рд╣реИредgit reset --merge: рд╕рдорд╛рди, рд▓реЗрдХрд┐рди рд╕реНрдЯреЗрдЬреНрдб рдлрд╝рд╛рдЗрд▓реЗрдВ рд░рдЦрддрд╛ рд╣реИтАФрдпрджрд┐ рдЖрдк рдХреБрдЫ рдмрджрд▓рд╛рд╡ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
GitHub рдкрд░ рдкреБрд╢ рдХрд░рддреЗ рд╕рдордп рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреИрд╕реЗ рд╕реБрд▓рдЭрд╛рдПрдБ?
рдпрджрд┐ git push рдкрд░ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рддреНрд░реБрдЯрд┐ рдЖрддреА рд╣реИ, рддреЛ рдпреЗ рдХрд░реЗрдВ:
- рддрд╛рдЬрд╝рд╛ рдмрджрд▓рд╛рд╡ pull рдХрд░реЗрдВ:
git pull origin main --rebase - рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдореИрдиреНрдпреБрдЕрд▓реА рд╕реБрд▓рдЭрд╛рдПрдБ рдЕрдкрдиреА рд▓реЛрдХрд▓ рдмреНрд░рд╛рдВрдЪ рдореЗрдВред
- рд╕реНрдЯреЗрдЬ рдФрд░ рдХрдорд┐рдЯ рдХрд░реЗрдВ рд░рд┐рдЬрд╝реЙрд▓реНрд╡реНрдб рдлрд╝рд╛рдЗрд▓реЗрдВ:
git add <conflicted-file>
git commit -m "Resolved merge conflict"
- рдлрд┐рд░ рд╕реЗ рдкреБрд╢ рдХрд░реЗрдВ:
git push origin main
рд░реАрдмреЗрд╕ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░реЗрдВ?
рд░реАрдмреЗрд╕ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк git rebase <branch> рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдмрджрд▓рд╛рд╡ рд╕рд╛рдлрд╝-рд╕реБрдерд░реЗ рдврдВрдЧ рд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛ рдкрд╛рддреЗред рд╕рдорд╛рдзрд╛рди:
- рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдореИрдиреНрдпреБрдЕрд▓реА рд╕реБрд▓рдЭрд╛рдПрдБ, рдлрд┐рд░
git rebase --continueрдЪрд▓рд╛рдПрдБред - рдпрджрд┐ рдЖрдк рд░реАрдмреЗрд╕ рд░рджреНрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ
git rebase --abortрдЪрд▓рд╛рдПрдБред - рдпрджрд┐ рдЖрдк рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреЗрдб рдХрдорд┐рдЯ рдХреЛ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬрд╝ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ
git rebase --skipрдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдХреНрдпрд╛ Git рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗ рдмрд┐рдирд╛ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреЗ рдорд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?
Git рдореЗрдВ рдПрдХ рдСрдЯреЛ-рдорд░реНрдЬ рд╕реНрдЯреНрд░реИрдЯреЗрдЬреА рд╣реЛрддреА рд╣реИ рдЬреЛ рдХрднреА-рдХрднреА рдорджрдж рдХрд░рддреА рд╣реИ:
git merge -X theirs <branch>рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рддрд╛рдХрд┐ рд╣рдореЗрд╢рд╛ рджреВрд╕рд░реА рдмреНрд░рд╛рдВрдЪ рдХреЗ рдмрджрд▓рд╛рд╡ рд╕реНрд╡реАрдХрд╛рд░ рд╣реЛрдВредgit merge -X ours <branch>рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рддрд╛рдХрд┐ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреА рдмреНрд░рд╛рдВрдЪ рдХреЗ рдмрджрд▓рд╛рд╡ рдмрдиреЗ рд░рд╣реЗрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдкреВрд░реНрдгрдд: рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдирд╣реАрдВ рд╣реИтАФрд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреНрдпрд╛ рд╣реИ?
Git рд╡рд░реНрдЬрд╝рди рдХрдВрдЯреНрд░реЛрд▓ рд╕рд┐рд╕реНрдЯрдо рдЯреАрдо рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдиреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрдорддреМрд░ рдкрд░ рдЕрд▓рдЧ-рдерд▓рдЧ рдмреНрд░рд╛рдВрдЪреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдХрд╛рд░реНрдп рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░ рд╡реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдореБрдЦреНрдп рдмреНрд░рд╛рдВрдЪ рдореЗрдВ рдорд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреА рдЯреАрдорд╡рд░реНрдХ рдмреЗрд╣рдж рдЙрддреНрдкрд╛рджрдХ рд╣реИ рдФрд░ рдмрдЧ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдкреНрд░рднрд╛рд╡реА рд╣реИред рдХрднреА-рдХрднреА рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдПрдХ рд╣реА рдХреЛрдб рд▓рд╛рдЗрди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЬрдм рд╡реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдкреИрджрд╛ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред┬а
Git рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХрд╛ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг
рдКрдкрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдбрд╛рдпрдЧреНрд░рд╛рдо рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рд╛рдорд╛рдиреНрдпрддрдГ Git рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреИрд╕реЗ рд╣реЛрддрд╛ рд╣реИред рдореБрдЦреНрдп рдмреНрд░рд╛рдВрдЪ рдореЗрдВ тАЬHELLO, WORLD!тАЭ рдЯреЗрдХреНрд╕реНрдЯ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рд╣реИред рдпреВрдЬрд╝рд░рдиреЗрдо abid рдореБрдЦреНрдп рдмреНрд░рд╛рдВрдЪ рдХреЛ рдлреЛрд░реНрдХ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ тАЬHELLO, CAT!тАЭ рдореЗрдВ рдмрджрд▓рддрд╛ рд╣реИред рдЬрдм abid рдмрджрд▓рд╛рд╡ рдХрд░ рд░рд╣рд╛ рд╣реЛрддрд╛ рд╣реИ, рдореВрд▓ main рдмреНрд░рд╛рдВрдЪ рднреА тАЬHELLO, DOG!тАЭ рдореЗрдВ рдмрджрд▓реА рдЬрд╛ рд░рд╣реА рд╣реЛрддреА рд╣реИред рдЗрди рдмреНрд░рд╛рдВрдЪреЛрдВ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдкрд░ рдорд░реНрдЬ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдХреА рд╕рдорд╕реНрдпрд╛ рдЖрдПрдЧреА рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд░реБрдХ рдЬрд╛рдПрдЧреАред┬а┬а
git mergeрдХрдорд╛рдВрдб рдХрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рдо рджреЛ рдмреНрд░рд╛рдВрдЪреЛрдВ рдХреЛ рдорд┐рд▓рд╛рдирд╛ рдФрд░ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рдХреЛ рдЕрдкрдиреЗ рдЖрдк рд╕реБрд▓рдЭрд╛рдирд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рдордп-рд╕рдордп рдкрд░ рдРрд╕реЗ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯреНрд╕ рд╕рд╛рдордиреЗ рдЖрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рджреЛ рд▓реЛрдЧреЛрдВ рдиреЗ рдПрдХ рд╣реА рдХреЛрдб рд▓рд╛рдЗрди рдмрджрд▓ рджреА рд╣реЛ рдпрд╛ рдХрд┐рд╕реА рдиреЗ рд╡реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣рдЯрд╛ рджреА рд╣реЛрдВ рдЬрд┐рди рдкрд░ рдХреЛрдИ рдЕрдиреНрдп рдбреЗрд╡рд▓рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ред Git рдЗрди рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдорд╛рд░реНрдХ рдХрд░ рджреЗрддрд╛ рд╣реИ рдФрд░ рдорд░реНрдЬрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд░реЛрдХ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдЕрдкрдиреЗ рдЖрдк рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛; рдмрд▓реНрдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓реА рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рд╣реЛрддреЗ рд╣реИрдВ рдпрд╛ рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреВрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред