рдХреИрд╕реЗ рдФрд░ рдХреНрдпреЛрдВ рдкреЗрдбрд╝реЛрдВ рдХреЛ рдЪреЛрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

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


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


рд╕рд╛рдордЧреНрд░реА


рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рднрд╛рдЧред рдХрдорд┐рдЯреНрд╕ рдФрд░ рдкреЗрдбрд╝реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдХрдорд┐рдЯ-рдЯреНрд░реА
рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рднрд╛рдЧ
1. рдПрдХ рдЕрдиреНрдп рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди
2. рджреЛ рд╢рд╛рдЦрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛
3. рд╢рд╛рдЦрд╛ рдЙрд▓рдЯ
4. рдЖрдВрд╢рд┐рдХ рдЙрд▓реНрдЯрд╛
5. рдХреГрддреНрд░рд┐рдо рдорд░реНрдЬ
6aред рдорд░реНрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░рд┐рдмреЗрд╕ рд╡рд┐рдзрд┐ - рд╡рд┐рд╡рд░рдг
6bред рдорд░реНрдЬ - рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реАрдмреЗрд╕ рд╡рд┐рдзрд┐
7. рдЙрдкрдирд╛рдо
рдирд┐рд╖реНрдХрд░реНрд╖



рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рднрд╛рдЧред рдХрдорд┐рдЯреНрд╕ рдФрд░ рдкреЗрдбрд╝реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


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


git cat-file -p 5e45ecb 

 tree 8640790949c12690fc71f9abadd7b57ec0539376 parent 930741d1f5fd2a78258aa1999bb4be897ba3d015 author Mark Tareshawty <tareby...@github.com> 1542718283 -0500 committer Mark Tareshawty <tareby...@github.com> 1542718283 -0500 gpgsig -----BEGIN PGP SIGNATURE----- ... -----END PGP SIGNATURE----- Fix scoping so that we don't break the naming convention 

рдпреЗ рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкреНрд░рддрд┐рдмрджреНрдз рдХреА рд╕рдВрдкреВрд░реНрдг рд╕рд╛рдордЧреНрд░реА рд╣реИрдВ:


  • рдкреЗрдбрд╝ - рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдбрд╝реА
  • рдЬрдирдХ - рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ
  • рд▓реЗрдЦрдХ - рдореВрд▓ рдкреНрд░рддрд┐рдмрджреНрдз + рддрд╛рд░реАрдЦ рдХреЗ рд▓реЗрдЦрдХ
  • рдХрдорд┐рдЯ - рдЗрд╕ рдкреНрд░рддрд┐рдмрджреНрдз + рддрд╛рд░реАрдЦ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛
  • gpgsig - рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ (рдпрджрд┐ рдЙрдкрд▓рдмреНрдз рд╣реЛ)
  • рд╕рдВрджреЗрд╢ - рдкреНрд░рддрд┐рдмрджреНрдз рдкрд╛рда

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


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


рдкреЗрдбрд╝ рдХреА рд╕рд╛рдордЧреНрд░реА рджреЗрдЦреЗрдВ

рдпрд╣ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╕реНрддреБ (рдХрдорд┐рдЯ / рдЯреНрд░реА / рдмреНрд▓реЙрдм) рдХреЗ рд▓рд┐рдП рдареАрдХ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рдХреБрдЫ рдЕрджреНрд╡рд┐рддреАрдп рд╣реИрд╢ рд╡рд░реНрдгреЛрдВ рдХреЛ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ: 8640790949c12690fc71f9abadd7b57ec539376 -> 8640790ред


 git cat-file -p 8640790 

 100644 blob 7ab08294a46f158c51460be3e7df6a190e15023b .env.example 100644 blob 0a1a4d1ad9ff3f35b67678ca893811e91b423af5 .gemset 040000 tree 033aa38ce0eab11fe229067c14ccce95e2b8b601 .github 100644 blob ca49bb7ffa6273b0be4ce7ba1accba456032fb11 .gitignore 100644 blob c99d2e7396e14ac072c63ec8419d9b8fede28d86 .rspec 100644 blob 65e77a2f59f635a8f24eb4714e8e43745c5c0eb9 .rubocop.yml 100644 blob 8e8299dcc068356889b365e23c948b92c6dfcd78 .ruby-version 100644 blob 19028f9885948aca2ba61f9d062e9dc21c21ad03 .stylelintrc.json 100644 blob 2f7a032fbc3f4f7195bfd91cb33889a684b572b9 .travis.yml 100644 blob 121615722a6c206a9fe24b9a1c9b647662a460d2 ARCHITECTURE.md 100644 blob 898195daeea0bbf8c5930deeaf1020ba8abab34a Gemfile 100644 blob de7ca707f9fe9172db941b65cdacaba7e024fc06 Gemfile.lock 100644 blob e6ff62fefd071b1a8ca279bae94ddbc4dd17b7a3 Gruntfile.js 100644 blob 0cac5b30fb32d36cce2aeb7d936be7b6207d68c7 MIT-LICENSE.txt 100644 blob c2c566e8cc3d440d3ee8041b79cded416db28136 Procfile 100644 blob d1fb2f575380e1e093a4d82e3f19e51f0b99a0a1 Procfile.dev 100644 blob 3a88e138f10fa65bd2cfe1a1d3292348205508b5 README.md 100644 blob 5366e6e073cc426518894cc379d3a07cf3c9cfb3 Rakefile 100644 blob e6d3d2d3e9d5122c5f75bbeee8ed0917ad38c131 app.json 040000 tree 94f83cf03bd6f1cf14672034877b14604744b7a2 app 040000 tree d4d859e82564250b4c4f2047de21e089e7555475 bin 100644 blob 1f71007621f17334fd6f2dd71c87b7a16867119c config.ru 040000 tree 9e8e4bf5ec44541aefff544672b94ca8a9d07bbf config 040000 tree 31b8d0e1fa2bb789dbd6319e04fc9f115952cf2a db 040000 tree 38e7a13e0e772c2a13e46d2007e239f679045bee doc 040000 tree a6e35ded8b35837660cf786e637912377f845515 lib 040000 tree d564d0bc3dd917926892c55e3706cc116d5b165e log 100644 blob 843523565ddee5e00f580d9c4e37fc2478fdaecc package-lock.json 100644 blob 791ee833ad316d75b1d2c83a64a3053fc952d254 package.json 040000 tree 4645317c52675d9889f89b26f4dd4d2ae1d8cbad public 040000 tree 31d3f8ae4a4ffe62787134642743ed32a35dbae2 resources 040000 tree 807ffa29868ef9c25ddb4b4126a4bb7f1b041bf0 script 040000 tree 4c3bf9a7f3679ba059b0f1c214a500d197546462 spec 040000 tree 136c8174412345531a9542cafef25ce558d2664f test 040000 tree e6524eafe066819e4181bc56c503320548d8009b vendor 

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдХрд┐ рдЧрд┐рдЯ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдкреНрд░рддрд┐рдмрджреНрдз рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдПрдХ рд╣реИрд╢ рд╣реИред рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЬреИрд╕реЗ рдЙрд╕рдореЗрдВ (рдкреЗрдбрд╝, рдмреВрдБрдж) рдореЗрдВ рдЕрдВрдХрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╣реИрд╢ред


рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдХреНрдпрд╛ рдХрд░рддреЗ рд╣реИрдВ


 git commit -m "Fixed bug" 

рдпрд╣ рдХрдорд╛рдВрдб рдПрдХ рдирдИ рдкреНрд░рддрд┐рдмрджреНрдз рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рддрд╛ рд╣реИ:


  • рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдерд┐рддрд┐ (рдПрдХ рдирдИ рдЯреНрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ рдЗрд╕рдХреЗ рд╣реИрд╢ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреА рдЧрдИ)
  • рд╡рд░реНрддрдорд╛рди (рдореВрд▓) рдкреНрд░рддрд┐рдмрджреНрдз рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ
  • рд▓реЗрдЦрдХ + рдХрдорд┐рдЯ + рджреЛ рддрд╛рд░реАрдЦреЗрдВ
  • рдкрд╛рда рдХрд░реЗрдВ

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


рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛

рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ, рдкреЗрдбрд╝ рдПрдХ рдРрд╕реА рд╡рд╕реНрддреБ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЕрддреАрдд рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕реНрдерд┐рддрд┐ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреА рд╣реИ - рдЬрдм рдЗрд╕ рдкреЗрдбрд╝ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рддрд┐рдмрджреНрдз рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред


рд╡рд░реНрдХрд┐рдВрдЧ рдлреЛрд▓реНрдбрд░ рдХреЛ рд╡рд░реНрдХрд┐рдВрдЧ рдЯреНрд░реА / рд╡рд░реНрдХрд┐рдВрдЧ рдХреЙрдкреА / рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд╛рдлреА рддрд╛рд░реНрдХрд┐рдХ рд╣реИред


рд╣рдорд╛рд░реЗ рдкрд╛рд╕ - рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдПрд░рд┐рдпрд╛ / рдЗрдВрдбреЗрдХреНрд╕ - рддреИрдпрд╛рд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдХреНрд╖реЗрддреНрд░ рднреА рд╣реИред рд▓реЗрдХрд┐рди рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ, рдпрд╣ рднреА рдПрдХ рдкреЗрдбрд╝ рд╣реИ , рдпрд╛ рдпреЛрдВ рдХрд╣реЗрдВ, рд╡рд╣ рдЕрд╡рд╕реНрдерд╛ рдЬреЛ рдкреЗрдбрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛрдиреЗ рдкрд░ рдмрдЪ рдЬрд╛рддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдордВрдЪрд┐рдд рдкреЗрдбрд╝ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ред



рдХрдорд┐рдЯ-рдЯреНрд░реА


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


рдЙрд╕рдХреА рдЪреБрдиреМрддреА рдХреЛ рджреЗрдЦреЛ


 git commit-tree 4c835c2 -m "Fixed bug" -p a8fc5e3 

 d9aded78bf57ca906322e26883644f5f36cfdca5 

рдЧрд┐рдЯ рдХрдо-рдЯреНрд░реА рдХрдорд╛рдВрдб рднреА рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рддрд░реАрдХреЗ рд╕реЗред рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдкреЗрдбрд╝ (рд╡реГрдХреНрд╖) 4c835c2 рдФрд░ рдореВрд▓ рдорд╛рддрд╛-рдкрд┐рддрд╛ a8fc5x3 рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдФрд░ рдпрд╣ рдирдИ рдкреНрд░рддрд┐рдмрджреНрдз d9aded7 рдХрд╛ рд╣реИрд╢ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдФрд░ рд╢рд╛рдЦрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рдмрджрд▓рддреА рд╣реИ (рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╣рд╡рд╛ рдореЗрдВ рдЬрдордиреЗ рд▓рдЧрддреА рд╣реИ)ред



рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рднрд╛рдЧ


рдЗрд╕ рдЖрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд░рд▓ рднрдВрдбрд╛рд░ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдЗрд╕рдХреА рддреАрди рд╢рд╛рдЦрд╛рдПрдБ рд╣реИрдВ:


рдорд╛рд╕реНрдЯрд░ - рдореБрдЦреНрдп рд╢рд╛рдЦрд╛
рдЕрд▓реНрдлрд╛ - рд╡рд╣ рд╢рд╛рдЦрд╛ рдЬрд┐рд╕ рдкрд░ рд╣рдо рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХрд░рддреЗ рд╣реИрдВ
рдмреАрдЯрд╛ - рдПрдХ рд╢рд╛рдЦрд╛ рдЬреЛ рдкрд╣рд▓реЗ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рд░реЛрдХ рджреА рдЧрдИ рдереА


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


 git clone https://github.com/capslocky/git-commit-tree-example.git cd ./git-commit-tree-example/ git checkout alpha 

рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЗ рдиреАрдЪреЗ

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


 "C:\Program Files\Git\git-bash.exe" --cd="D:\path\project" 


1. рдПрдХ рдЕрдиреНрдп рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди


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


рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рдХрднреА рднреА рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рдорд╛рдорд▓рд╛ рд╣реИред


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


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдмреАрдЯрд╛ рд╢рд╛рдЦрд╛ рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХреА рдЧрдИ рд╣реИрд╢ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ:


 git rev-parse origin/beta 

 280c30ff81a574f8dd41721726cf60b22fb2eced 

280c30f - рдмрд╕ рдкрд╣рд▓реЗ рдХреБрдЫ рдЕрдХреНрд╖рд░ рд▓реЗрдВ


рдЕрдм git рдХреИрдЯ-рдлрд╛рдЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдорд┐рдЯ рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдХреЗ рдЗрд╕рдХреЗ рдкреЗрдбрд╝ рдХрд╛ рд╣реИрд╢ рдЦреЛрдЬреЗрдВ:


 git cat-file -p 280c30f 

 tree 3c1afe75f54518dbd82ea7a4e3c4ff50389a573a <--- parent 560b449675513bc8f8f4d6cda56a922d4e36917a author Baur <atanov...@gmail.com> 1540619512 +0600 committer Baur <atanov...@gmail.com> 1540619512 +0600 Added info about windows 

3 рд╕реА 1 рдХреИрдлреЗ 7 - рдпрд╣ рд╡рд╣ рдкреЗрдбрд╝ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЬрд╝рд░реВрд░рдд рд╣реИ


рдФрд░ рдЕрдм рд╣рдо рдЗрд╕ рдкреЗрдбрд╝ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реБрдП рдПрдХ рдХрдорд┐рдЯ рдмрдирд╛рдПрдВрдЧреЗ, рдФрд░ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдУрд░ рд╕реЗ рд╣рдо рд╡рд░реНрддрдорд╛рди рдХрдорд┐рдЯ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВрдЧреЗ:


 git commit-tree 3c1afe7 -m "Synced with branch 'beta'" -p HEAD 

 eb804d403d4ec0dbeee36aa09da706052a7cc687 

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


 git cat-file -p xxxxxxx 

 tree 3c1afe75f54518dbd82ea7a4e3c4ff50389a573a <--- parent 64fafc79e8f6d22f5226490daa5023062299fd6c author Peter <peter...@gmail.com> 1545230299 +0600 committer Peter <peter...@gmail.com> 1545230299 +0600 Synced with branch 'beta' 

рдорд╣рд╛рди, рдпрд╣ рдореВрд▓ / рдмреАрдЯрд╛ рд╢рд╛рдЦрд╛ рдкрд░ рдкреНрд░рддрд┐рдмрджреНрдз рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдкреЗрдбрд╝ рд╣реИред рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдкреНрд░рддрд┐рдмрджреНрдз рд╡рд░реНрддрдорд╛рди рд╢рд╛рдЦрд╛ рдХрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рд╡рдВрд╢рдЬ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд╢рд╛рдЦрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдлрд╛рд╕реНрдЯ-рдлреЙрд░рд╡рд░реНрдб рдорд░реНрдЬ рдХрд░реЗрдВ


 git merge --ff xxxxxxx 

 Updating 64fafc7..xxxxxxx Fast-forward Azure.txt | 3 --- Bill.txt | 6 +----- Linus.txt | 15 +++++++++++++++ 3 files changed, 16 insertions(+), 8 deletions(-) 

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




2. рджреЛ рд╢рд╛рдЦрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛


рдЙрджреНрджреЗрд╢реНрдп:
рдмреАрдЯрд╛ рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВред


рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдорд┐рдд рдкреНрд░рддрд┐рдмрджреНрдз рдЙрди рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬреЛ рджреЛ рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рдмреАрдЪ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдВрддрд░ рд╣реИрдВред рдпрд╣ рд╕рдВрдкрддреНрддрд┐ рдПрдХ рд╢рд╛рдЦрд╛ рдХреА рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддреА рд╣реИред рдпрд╣ рдПрдХ рддреАрд╕рд░реА рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕рдореЗрдВ рд╕рдорд╛рди рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред


рддреЛ, рдкрд╣рд▓реЗ, рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХреЛ рдЙрд╕рдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдВ


 git reset --hard origin/alpha 

рдЪрд▓реЛ рд╡рд░реНрддрдорд╛рди рдкрд░ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕ рдкрд░ рдЦрдбрд╝реЗ рд╣реЛрдВ


 git checkout -b temp 

рдФрд░ рд╣рдо рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рди рд╣реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реЗрд╖ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░ рд╣рдо рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдорд┐рд▓реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдкреНрд░рддрд┐рдмрджреНрдз рдЯреНрд░реА рдореВрд▓ / рдмреАрдЯрд╛ ^ {рдЯреНрд░реА} рдпрд╛ рдЙрд╕реА 280c30f ^ / рдЯреНрд░реА} рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред


 git merge --ff $(git commit-tree origin/beta^{tree} -m "Diff with branch 'beta'" -p HEAD) 

рд╣реЛ рдЧрдпрд╛, рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╣рдо рджреЛ рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдПрдХ рдкреНрд░рддрд┐рдмрджреНрдз рдЕрдВрддрд░ рдХреЗ рд░реВрдк рдореЗрдВ рднреМрддрд┐рдХ рдереЗ


 git show 

 git diff alpha origin/beta 

рдмреЗрд╢рдХ, рд╣рдо рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХрд┐рдиреНрд╣реАрдВ рджреЛ рдХрдорд┐рдЯреНрд╕ (рд╕реНрдЯреЗрдЯреНрд╕) рдХреЗ рд▓рд┐рдП рдРрд╕реА "рддреБрд▓рдирд╛рддреНрдордХ" рдХрдорд┐рдЯрдореЗрдВрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред




3. рд╢рд╛рдЦрд╛ рдЙрд▓рдЯ


рдЙрджреНрджреЗрд╢реНрдп:
рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╣рд┐рдЯ рд░реЛрд▓ред


рдЪрд▓реЛ рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ


 git checkout alpha git branch -D temp 

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдореЗрдВ рдЕрд▓реНрдлрд╛ рдмреНрд░рд╛рдВрдЪ рдкрд░ рдЕрдВрддрд┐рдо рджреЛ рдХрдорд┐рдЯреНрд╕ рдХреЛ рд░реЛрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рджреЛ рдХреНрд▓рд╛рд╕рд┐рдХ рддрд░реАрдХреЗ рд╣реИрдВ:


  1. рд░рди рдЬреАрдЯ рджреЛ рдмрд╛рд░ - рдкреНрд░рддрд┐ рдХрдорд┐рдЯ
  2. git рд░реАрд╕реЗрдЯ, рдпрд╛рдиреА рд╢рд╛рдЦрд╛ рд╕реНрдерд┐рддрд┐ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВ

рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕реЗ рддреАрд╕рд░реЗ рддрд░реАрдХреЗ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:


 git merge --ff $(git commit-tree 7a714bf^{tree} -m "Reverted to commit 7a714bf" -p HEAD) 

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


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдкрдХреЛ рд╢рд╛рдЦрд╛ рдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ


 git merge --ff $(git commit-tree 64fafc7^{tree} -m "Reverted back to commit 64fafc7" -p HEAD) 

рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдпреЗ рджреЛ рдЖрд╡рд╛рдЧрдорди рд╢рд╛рдЦрд╛ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдореЗрдВ рдмрдиреЗ рд░рд╣реЗрдВрдЧреЗ, рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдпрд╣ рд▓реБрдврд╝рдХрд╛ рд╣реБрдЖ рдерд╛ рдФрд░ рд╡рд╛рдкрд╕ рд▓реМрдЯрд╛ред




4. рдЖрдВрд╢рд┐рдХ рдЙрд▓реНрдЯрд╛


рдЙрджреНрджреЗрд╢реНрдп:
рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рдХрдорд┐рдЯреНрд╕ рдореЗрдВ рдХреБрдЫ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╡рд╛рдкрд╕ рдХрд░реЗрдВред


рдлрд┐рд░ рд╕реЗ, рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХреЛ рдЙрд╕рдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдВ


 git reset --hard origin/alpha 

рдЕрд▓реНрдлрд╛ рдмреНрд░рд╛рдВрдЪ рдореЗрдВ 3 рдХрдорд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдмрд┐рд▓ рдЯреВ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЕрдВрддрд┐рдо рдкреНрд░рддрд┐рдмрджреНрдз рдореЗрдВ, Azure.txt рдлрд╝рд╛рдЗрд▓ рднреА рдЬреЛрдбрд╝реА рдЬрд╛рддреА рд╣реИред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдореЗрдВ рдмрд┐рд▓ рдЯреВ рдореЗрдВ рдкрд┐рдЫрд▓реЗ 2 рдХрдорд┐рдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдмрд┐рдирд╛ рдХрд┐рд╕реА рджреВрд╕рд░реА рдлрд╛рдЗрд▓ рдХреЛ рдЯрдЪ рдХрд┐рдПред


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░реЗрдВ 2 рд╡рд╛рдкрд╕ рдЖрддреЗ рд╣реИрдВ


 git merge --ff $(git commit-tree 7a714bf^{tree} -m "any text" -p HEAD) 

рдЕрдЧрд▓рд╛, рд╢рд╛рдЦрд╛ рдХреЛ рдкрд┐рдЫрд▓реА рдкреНрд░рддрд┐рдмрджреНрдз рдкрд░ рд▓реМрдЯрд╛рдПрдВ, рд▓реЗрдХрд┐рди рдбрд┐рд╕реНрдХ рдкрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЫреВрдиреЗ рдХреЗ рдмрд┐рдирд╛


 git reset HEAD~1 

рдФрд░ рдЕрдм рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдз zasteydit рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рдФрд░ рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреНрдпрд╛рдЧ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


 git add Bill.txt git commit -m "Reverted file Bill.txt to 7a714bf" git reset --hard HEAD 



5. рдХреГрддреНрд░рд┐рдо рдорд░реНрдЬ


рдЙрджреНрджреЗрд╢реНрдп:
рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рд╢рд╛рдЦрд╛ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рдмрджрд▓реЗрдВред


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


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


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


 git cat-file -p 7229df8 

 tree 3c1afe75f54518dbd82ea7a4e3c4ff50389a573a parent fd54ab7dde87593b9892b6d1ffbf1afd39ba6f9e parent 280c30ff81a574f8dd41721726cf60b22fb2eced author Baur <atanov...@gmail.com> 1540619579 +0600 committer Baur <atanov...@gmail.com> 1540619592 +0600 Merge branch 'beta' into 'master' 

рд╡рд░реНрддрдорд╛рди рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВ рдФрд░ рдорд╛рд╕реНрдЯрд░ рдкрд░ рдЬрд╛рдПрдВ


 git reset --hard origin/alpha git checkout master 

рдФрд░ рдЕрдм рдПрдХ рд╣реА рдЯреАрдо рд╣реИ, рд▓реЗрдХрд┐рди рджреЛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд╕рд╛рде рд╣реИ


 git merge --ff $(git commit-tree alpha^{tree} -m "Merge 'alpha' into 'master', but take 'alpha' tree" -p HEAD -p alpha) 

рд╣реЛ рдЧрдпрд╛, рд╣рдордиреЗ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХрд╛ рдордВрдЪрди рдХрд┐рдпрд╛, рдФрд░ рд╣рдореЗрдВ рдЕрд╕реНрдерд╛рдпреА рдХреЛрдб рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рд╡рд┐рд░реЛрдз рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдореЗрдВ рдмрд╕ рдирд╡реАрдирддрдо рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдкрдбрд╝рд╛ред



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


рд╕реНрдкреЙрдЗрд▓рд░

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




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



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


 git cat-file -p origin/beta 

 tree 3c1afe75f54518dbd82ea7a4e3c4ff50389a573a <--- parent 560b449675513bc8f8f4d6cda56a922d4e36917a author Baur <atanov...@gmail.com> 1540619512 +0600 committer Baur <atanov...@gmail.com> 1540619512 +0600 Added info about windows 

 git cat-file -p 7229df8 

 tree 3c1afe75f54518dbd82ea7a4e3c4ff50389a573a <--- parent fd54ab7dde87593b9892b6d1ffbf1afd39ba6f9e parent 280c30ff81a574f8dd41721726cf60b22fb2eced author Baur <atanov...@gmail.com> 1540619579 +0600 committer Baur <atanov...@gmail.com> 1540619592 +0600 Merge branch 'beta' into 'master' 


6aред рдорд░реНрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░рд┐рдмреЗрд╕ рд╡рд┐рдзрд┐ - рд╡рд┐рд╡рд░рдг


рдЙрджреНрджреЗрд╢реНрдп:
рдпрд╣ рдПрдХ "рднрд╛рд░реА" рд░рд┐рдмрд╛рд╕ рд╢рд╛рдЦрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ (рд╡рд┐рднрд┐рдиреНрди рдХрдорд┐рдЯреЛрдВ рдкрд░ рдХрдИ рд╕рдВрдШрд░реНрд╖)ред


рдЧрд┐рдЯ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреА рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдХ рд╣реЛрд▓реАрд╡рд░ рдереАрдо рд╣реИ - рд░рд┐рдмреЗрд╕ рдмрдирд╛рдо рдорд░реНрдЬред рд▓реЗрдХрд┐рди рдореИрдВ рд╣реЛрд▓рд┐рд╡рд░рд┐рдЯ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдорд┐рддреНрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


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


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


рдпрджрд┐ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рд╕реНрдкреЙрдЗрд▓рд░ рдХреЗ рддрд╣рдд рддреИрдпрд╛рд░ рдЯреАрдореЛрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реВрдВред


рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда

рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдВ


 git checkout master git reset --hard origin/master git checkout alpha git reset --hard origin/alpha 

рдмрдирд╛рдПрдБ рдФрд░ рдЕрд▓реНрдлрд╛-рд░рд┐рдмреЗрд╕-рд╕рдВрдШрд░реНрд╖ рдХреА рд╢рд╛рдЦрд╛ рдкрд░ рдЦрдбрд╝реЗ рд╣реЛрдВ рдФрд░ рдорд╛рд╕реНрдЯрд░ рдкрд░ рд░реАрдмреЗрдЬрд╝ рдХрд░реЗрдВ


 git checkout -b alpha-rebase-conflicts git rebase master 

рдПрдХ рдкреНрд░реЗрдд рд╕рдВрдШрд░реНрд╖ рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рдХрдорд┐рдЯреЛрдВ рдореЗрдВ рд╕рдВрдШрд░реНрд╖ рд╣реЛрдЧрд╛ред


рдЕрдм рдЖрдЗрдП рдорд░реНрдЬ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ рдФрд░ рд░рд┐рдмрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╢рд╛рдЦрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдВред


 git checkout alpha git branch -D alpha-rebase-conflicts 

рдорд╛рд╕реНрдЯрд░ рдкрд░ рдЬрд╛рдПрдБ рдФрд░ рдорд░реНрдЬ рдХрд░реЗрдВ


 git checkout master git merge alpha 

рдХреЗрд╡рд▓ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рдВрдШрд░реНрд╖ рд╣реЛрдЧрд╛, рд╣рдо рдЗрд╕реЗ рд╕рд╣реА рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХрд░рддреЗ рд╣реИрдВ


 git add Bill.txt git commit -m "Merge branch 'alpha' into 'master'" 

рдорд░реНрдЬ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реБрдЖред


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


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


рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░ рд╕реЗ, рджреЛрдиреЛрдВ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдБред


 git checkout master git reset --hard origin/master git checkout alpha git reset --hard origin/alpha 

рдЖрдЗрдП рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рдЕрд╕реНрдерд╛рдпреА рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рд╡рд┐рд▓рдп рдХрд░реЗрдВрдЧреЗред


 git checkout -b temp git merge origin/master 

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


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


 git add Bill.txt git commit -m "Merge branch 'origin/master' into 'temp'" 

рд╣рдо рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдореЗрдВ рд▓реМрдЯрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реЗ рдкрдХреНрд╖ рдореЗрдВ рд╕рднреА рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЗ рд╕реНрд╡рдд: рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рд░рд┐рдмреЗрд╕ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рдХреЛ рд░рд╛рдЬреНрдп рдореЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╕реНрд╡рдпрдВ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВред


 git checkout alpha git rebase origin/master -X theirs git merge --ff $(git commit-tree temp^{tree} -m "Fix after rebase" -p HEAD) git branch -D temp 


рдЕрдВрдд рдореЗрдВ, рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рдЦреВрдмрд╕реВрд░рддреА рд╕реЗ рдорд░реНрдЬрд┐рдо рдЕрд▓реНрдлрд╛ред


 git checkout master git merge alpha --no-ff --no-edit 


рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдорд╛рд╕реНрдЯрд░, рдЕрд▓реНрдлрд╛ рдФрд░ рд░рд┐рдореЛрдЯ рдЯреЗрдореНрдк рд╢рд╛рдЦрд╛ рддреАрдиреЛрдВ рдПрдХ рд╣реА рдкреЗрдбрд╝ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпреЗ рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВред


рдЗрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд┐рдкрдХреНрд╖:


  • рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдШрд░реНрд╖ рдкреНрд░рддрд┐рдмрджреНрдз рдХрд╛ рдХреЛрдИ рдореИрдиреБрдЕрд▓ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ - рд╕рдВрдШрд░реНрд╖ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
  • рд╣рд░ рдЫреВрдЯ рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд (рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ) рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛

рдкреЗрд╢реЗрд╡рд░реЛрдВ:


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


6bред рдорд░реНрдЬ - рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реАрдмреЗрд╕ рд╡рд┐рдзрд┐


рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣рд╛рдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреА рдЧрдИ рд╣реИ: https://github.com/capslocky/git-rebase-via-merge


рдЖрдЗрдП рдЗрд╕рдХреЗ рдХрд╛рдо рдХреЛ рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рджреЗрдЦреЗрдВред рдлрд┐рд░ рд╕реЗ, рджреЛрдиреЛрдВ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдореВрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдПрдБ


 git checkout master git reset --hard origin/master git checkout alpha git reset --hard origin/alpha 

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдПрдВ


 curl -L https://git.io/rebase-via-merge -o ~/git-rebase-via-merge.sh chmod +x ~/git-rebase-via-merge.sh 

рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ

рдлрд╝рд╛рдЗрд▓ рдпрд╣рд╛рдБ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА: C: \ Users \ user-name \ git-rebase-via-merge.sh


рдЙрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╢рд╛рдЦрд╛ рдХреЛ рдмрджрд▓реЗрдВ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд░рд┐рдмрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдореЗрдВ рдореВрд▓ / рдорд╛рд╕реНрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ


 nano ~/git-rebase-via-merge.sh 

 default_base_branch='origin/master' 

рдЪрд▓рд┐рдП рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╢рд╛рдЦрд╛ рднреА рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЦрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЕрд▓реНрдлрд╛ рд╢рд╛рдЦрд╛ рдХреЛ рд╕реНрдкрд░реНрд╢ рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ


 git checkout -b alpha-rebase-test 

рдФрд░ рдЕрдм рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЧрд┐рдЯ рд░реАрдмреЗрд╕ рдореВрд▓ / рдорд╛рд╕реНрдЯрд░ рдХреЗ рдмрдЬрд╛рдп)


 ~/git-rebase-via-merge.sh 


рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рдгрд╛рдо
 $ ~/git-rebase-via-merge.sh This script will perform rebase via merge. Current branch: alpha-rebase-test (64fafc7) Base branch: origin/master (9c6b60a) Continue (c) / Abort (a) c Auto-merging Bill.txt CONFLICT (content): Merge conflict in Bill.txt Automatic merge failed; fix conflicts and then commit the result. You have at least one merge conflict. Fix all conflicts in the following files, stage them up and type 'c': Bill.txt Continue (c) / Abort (a) c [detached HEAD 785d49e] Hidden temp commit to save result of merging 'origin/master' into 'alpha-rebase-test' as detached head. Merge succeeded on hidden commit: 785d49e Starting rebase automatically resolving any conflicts in favor of current branch. First, rewinding head to replay your work on top of it... Auto-merging Bill.txt [detached HEAD a680316] Added history of windows Author: Baur <atanov...@gmail.com> Date: Sat Oct 27 11:45:50 2018 +0600 1 file changed, 6 insertions(+), 3 deletions(-) Committed: 0001 Added history of windows Auto-merging Bill.txt [detached HEAD dcd34a8] Replaced history of windows Author: Baur <atanov...@gmail.com> Date: Sat Oct 27 11:55:42 2018 +0600 1 file changed, 4 insertions(+), 5 deletions(-) Committed: 0002 Replaced history of windows Auto-merging Bill.txt [detached HEAD 8d6d82c] Added file about Azure and info about Windows 10 Author: Baur <atanov...@gmail.com> Date: Sat Oct 27 12:06:27 2018 +0600 2 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 Azure.txt Committed: 0003 Added file about Azure and info about Windows 10 All done. Restoring project state from hidden merge with single additional commit. Updating 8d6d82c..268b320 Fast-forward Bill.txt | 4 ++++ 1 file changed, 4 insertions(+) Done. 


 ~/git-rebase-via-merge.sh origin/develop 

, ours / theirs :


ours тАФ (HEAD)
theirs тАФ (, origin/develop)


rebase тАФ .



7.


git .


.


 git config alias.copy '!git merge --ff $(git commit-tree ${1}^{tree} -p HEAD -m "Tree copy from ${1}")' 

git copy xxx, xxx тАФ .


 git copy xxx 


 git merge --ff $(git commit-tree xxx^{tree} -p HEAD -m "Tree copy from xxx") 


 git copy a8fc5e3 

 git copy origin/beta 

 git copy HEAD~3 

git amend.


 git commit --amend -m "Just for test" 

:


 git commit --amend 



, , . , . тАФ . , , . . " " " " . ( , devops), , .

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


All Articles