Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π΅ΡΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΎΡΠΌΠ΅Π½ΡΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΡΠΌΠ΅Π½Ρ
Π Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ. ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΎΡΠΌΠ΅Π½Ρ ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ, Π½Π΅ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΡΠΌΠ΅Π½Ρ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ! ΠΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ΅Π΄ΠΊΠΈΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Git, Π³Π΄Π΅ Π½Π΅Π²Π΅ΡΠ½ΡΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ΠΎΠ±ΡΠ°ΡΠΈΠΌΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ (ΠΈΠ½Π΄Π΅ΠΊΡ) Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠ°Π²ΠΎΠΊ Π² ΠΊΠΎΠΌΠΌΠΈΡ. ΠΡΠ»ΠΈ Π²Ρ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΌΠ΅Π½ΡΠ»ΠΈ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΠ΅Π½Π° ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°), ΡΠΎ ΡΠ½ΠΈΠΌΠΎΠΊ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅, Π° Π²ΡΡ ΡΡΠΎ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ β ΡΡΠΎ Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ.
ΠΠ°ΠΏΡΡΡΠΈΡΡΡ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΎΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ Π·Π°Π±ΡΠ»ΠΈ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΎΡΠ΅Π»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ β Π²ΡΠΎΡΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π·Π°ΠΌΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ.
ΠΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²Π½ΠΎΡΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΊΠΈ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, Π²Ρ Π½Π΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΈΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ Π΅Π³ΠΎ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ Π½ΠΎΠ²ΡΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ, Π±ΡΠ΄ΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π», Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΎΠ½ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² ΠΈΡΡΠΎΡΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΠΌΡΡΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠ°Π²ΠΎΠΊ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ, ΠΏΡΠΈ ΡΡΠΎΠΌ, Π² ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠΈ Π·Π°ΡΠΎΡΠ΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΠΈΠ΄Π° Β«ΠΠΉ, Π·Π°Π±ΡΠ» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»Β» ΠΈΠ»ΠΈ Β«ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈΒ».
ΠΡΠΌΠ΅Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»Π°
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π²Π° ΡΠ°Π·Π΄Π΅Π»Π° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. Π Π°Π΄ΡΠ΅Ρ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΡΠΈΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ, ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²Π°ΠΌ ΠΊΠ°ΠΊ ΠΎΡΠΌΠ΅Π½ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π½ΠΈΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° ΠΈ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΡ Π² ΡΠ°Π·Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½ΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add * ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΠΎΠ±Π°. ΠΠ°ΠΊ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ ? ΠΠΎΠΌΠ°Π½Π΄Π° git status Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡ Π²Π°ΠΌ:
ΠΡΡΠΌΠΎ ΠΏΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠΌ Β«Changes to be committedΒ» Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ git reset HEAD β¦β Π΄Π»Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΠ΅ΠΌ ΡΡΠΎΠΌΡ ΡΠΎΠ²Π΅ΡΡ ΠΈ ΠΎΡΠΌΠ΅Π½ΠΈΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° CONTRIBUTING.md :
ΠΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½Π½ΠΎ, Π½ΠΎ β ΡΠ°Π±ΠΎΡΠ°Π΅Ρ! Π€Π°ΠΉΠ» CONTRIBUTING.md ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΡΠΌΠ΅Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΉΠ»Π΅
Π Π²ΡΠ²ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΠΠ΄Π΅ΡΡ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΠΊ ΠΈ ΡΠ΄Π΅Π»Π°Π΅ΠΌ:
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΎΡΠΊΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅, Π½ΠΎ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΠΈΡ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ, ΡΠΎ Π΅ΡΡΡ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΈΠΏΡΡΡΡΠ²Π°Π½ΠΈΠ΅ β ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ Π² Π³Π»Π°Π²Π΅ ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² Git.
ΠΡΠΌΠ΅Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git restore
ΠΡΠΌΠ΅Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ git restore
Π€Π°ΠΉΠ» CONTRIBUTING.md ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π½ΠΎ ΡΠ½ΠΎΠ²Π° Π½Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½.
ΠΡΠΊΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ git restore
ΠΠ½ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½Π΅Π΄Π²ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ, ΠΊΠ°ΠΊ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π²Π°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΠΎ, ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ:
ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ git restore β ΠΎΠΏΠ°ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΡΠ±ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π² ΡΡΠΎΡ ΡΠ°ΠΉΠ», ΠΈΡΡΠ΅Π·Π½ΡΡ β Git ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ» ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ. ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π΅ΡΠ»ΠΈ ΡΠΎΡΠ½ΠΎ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, Π½ΡΠΆΠ½Ρ Π»ΠΈ Π²Π°ΠΌ ΡΡΠΈ Π½Π΅ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Git, Ρ Ρ ΠΎΡΡ Π²ΡΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ! ΠΠΎΠΌΠ°Π½Π΄Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΏΡΡΠ΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ
Git β ΡΠ΄ΠΎΠ±Π½Π°Ρ, Π½ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎ Π½Π΅Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Git ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ.
ΠΠΎ Π²ΡΡ ΡΡΡΠΊΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΡΠΎΡΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π Π·Π΄Π΅ΡΡ Ρ Π½Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΠΏΠΈΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΡΡΠΈΡΡ ΠΈ ΡΠΉΡΠ°. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ.
Π§Π΅ΡΡ, Ρ ΡΠ΄Π΅Π»Π°Π» ΡΡΠΎ-ΡΠΎ Π½Π΅ ΡΠΎ. ΠΠ°ΠΉΡΠ΅ ΠΌΠ½Π΅ Π²ΠΎΠ»ΡΠ΅Π±Π½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ!
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΠΎΡΠΊΠ°ΡΠΈΠ² ΡΠ»ΠΈΡΠ½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ»ΡΡΠΈΠ»Π°ΡΡ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎΡΡΡ. refLog ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Ρ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ β Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΠΏΠ°ΡΠΈΠ±ΠΎ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π― ΡΠ΄Π΅Π»Π°Π» ΠΊΠΎΠΌΠΌΠΈΡ, Π½ΠΎ ΡΡΠ°Π·Ρ ΠΆΠ΅ Π·Π°ΠΌΠ΅ΡΠΈΠ» ΠΎΡΠΈΠ±ΠΊΡ, Π΅Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ!
NB! ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅. ΠΡΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π»ΠΈΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΠΈΠ½Π°ΡΠ΅ Ρ Π²Π°Ρ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π₯ΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°!
ΠΡΠΎ ΠΏΡΠΎΡΡΠΎβ¦ Π³Π»ΡΠΏΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
Π― ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΠ» Π² ΠΌΠ°ΡΡΠ΅Ρ, Ρ ΠΎΡΡ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ!
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΠ»ΠΈ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°ΡΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ git reset HEAD@ <ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½ΡΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ>Π²ΠΌΠ΅ΡΡΠΎ HEAD
ΠΡ Π²ΠΎΡ, Ρ ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΠ» Π½Π΅ Π² ΡΡ Π²Π΅ΡΠΊΡ
ΠΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΏΠΎΡΠΎΠ±, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² β ΡΡΠΎ cherry-pick.
ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ diff, Π½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ²Π΅ΡΠ΅Π½Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ, Π½ΠΎ diff ΠΏΡΡΡΠΎΠΉ, Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· add. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠΎΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π°Π³.
Π ΠΎΠ±ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅ Π±Π°Π³, Π° ΡΠΈΡΠ°, Π½ΠΎ ΠΎΠ½Π° ΡΠ΅ΡΡΠΎΠ²ΡΠΊΠΈ Π½Π΅ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°Ρ Β―\_(γ)_/Β―
ΠΠ½Π΅ ΡΡΠΎΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΄Π΅Π»Π°Π½ 5 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π½Π°Π·Π°Π΄
Π ΡΡΠ°ΡΡΡΡ, Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π½Π°Π·Π°Π΄ Π½Π° 5 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π·Π°Π½ΠΈΠΌΠ°ΡΡΡ ΠΊΠΎΠΏΠΈΠΏΠ°ΡΡΠΎΠΌ ΡΡΠ°ΡΡΡ ΠΈ Π½ΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΌΠ΅Π½ΠΈΡΡ Π²ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ revert.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡ, Π½ΠΎ ΠΈ ΡΠ΅Π»ΡΠΉ ΡΠ°ΠΉΠ». ΠΡΠ°Π²Π΄Π°, ΡΡΠΎ ΡΠΆΠ΅ Π±ΡΠ΄ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρβ¦
ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅
Π Π²ΠΎΡ ΠΈ ΠΎΠ½ΠΈ, ΡΡΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΠΎΠ³Π΄Π° Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ Π½Π°ΡΠ΅Π» ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΠ Π£Π’Π, ΠΠ Π£Π’Π, Π-Π -Π£-Π’-Π. ΠΠΎ Π΅ΡΠ»ΠΈ Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ β ΠΏΠΎΡΠ΅ΠΌΡ ΠΈΠΌΠ΅Π½Π½ΠΎ checkout β Π»ΡΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΉΠ»Π΅? :shakes-fist-at-linus-torvalds:
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Eric V. ΠΠ° ΡΡΠΎΡ ΡΠΏΠΎΡΠΎΠ±. Π Π²ΡΠ΅ ΠΆΠ°Π»ΠΎΠ±Ρ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ sudo Π°Π΄ΡΠ΅ΡΡΠΉΡΠ΅ Π΅ΠΌΡ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΡΠ»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ Π΄ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ. ΠΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ β ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΡΡΠΈΡΠ΅Π»ΡΠ½Ρ ΠΈ Π½Π΅ΠΎΠ±ΡΠ°ΡΠΈΠΌΡ.
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠΡΠ° ΡΡΠ°ΡΡΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠ΅ΡΠΏΡΠ²Π°ΡΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ. Π Π΄Π°, Π΅ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΠΏΡΠΈΡΠ΅ΠΌ Π΅ΡΠ΅ Π»ΡΡΡΠ΅. ΠΠΎ Ρ ΠΏΡΠΈΡΠ΅Π» ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ ΡΡΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΡΠΎΠ± ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎΡΠΎΠΌ Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΡΡΠΌΠ°ΡΡΠ΅Π΄ΡΠ°Ρ ΠΈΠ΄Π΅Ρ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π½Π°Ρ ΠΎΠ΄ΠΊΠ°ΠΌΠΈ. ΠΠ΅ΡΠΈΡΠ΅ ΡΡΠΎ ΠΈΠ»ΠΈ ΡΡ ΠΎΠ΄ΠΈΡΠ΅!
ΠΠ°Π½ΠΈΠΈΠ» ΠΠΈΠ»ΠΈΠΏΠ΅Π½ΠΊΠΎ, Π΄ΠΈΡΠ΅ΠΊΡΠΎΡ ΡΠ΅Π½ΡΡΠ° ΠΏΠΎΠ΄Π±ΠΎΡΠ° IT-ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² SymbioWay ΠΈ Π΅Π²Π°Π½Π³Π΅Π»ΠΈΡΡ Π±ΡΠΊΠ΅Π½Π΄-Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° Skillbox, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠ» ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΎ Git ΠΈ Π΅Π³ΠΎ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Git ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π² 2005-ΠΎΠΌ Π³ΠΎΠ΄Ρ, ΠΈ ΠΎΠ½ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΡΡΠ°Π·Ρ Π·Π°Π½ΡΠ» ΡΡΠ½ΠΎΠΊ. ΠΠΎΠΌΠ½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π΅ΡΡ Π² 2008-ΠΎΠΌ Π³ΠΎΠ΄Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π²Π½Π΅Π΄ΡΡΠ»ΠΈ SVN. Π Π΄Π°ΠΆΠ΅ Π² 2012-ΠΎΠΌ ΠΎΠ΄Π½Π° Π±Π»ΠΈΠ·ΠΊΠ°Ρ ΠΊΠΎ ΠΌΠ½Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΡΡΠΈΠ»Π΅Π½Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ»Π° Mercurial. Π‘ Π³ΠΎΠ΄Π°ΠΌΠΈ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΡΠ°Π»ΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ, ΡΡΠΎ Git β ΡΡΠΎ Π»ΡΡΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΈ Π΅Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ.
ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·ΡΡΠΈΡΠ΅ Git! ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΎΠ½Π° Π½ΡΠΆΠ½Π°, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ, Π²Π΅ΡΠΊΠ°, ΠΊΠ°ΠΊ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ merge, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΡΠ²Π°ΡΡ Π²ΠΈΠ΄Ρ βresetβ. ΠΠΎΠ½Π°ΡΠ°Π»Ρ ΡΡΠ° ΡΠ΅ΠΌΠ° Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎΠΉ ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ, Π½ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π»ΠΈΡΡ ΠΏΡΠΈΠ²ΡΠΊΠ½ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Git, ΠΈ ΠΎΡΠ²ΡΠΊΠ½ΡΡΡ Π²Ρ ΡΠΆΠ΅ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅.
ΠΠ°ΠΊ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΊΠΎΠ΄ΠΎΠΌ Π² Git ΠΈ Π²Π΄ΡΡΠ³ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΠΏΠΎ ΠΏΠ»Π°Π½Ρ. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π²Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ!
ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΠ±Π°.
ΠΠΎΠΌΠ°Π½Π΄Π° git revert
ΠΠΎΠΌΠ°Π½Π΄Π° git revert ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ:
ΠΠ°ΠΉΡΠΈ ΠΈΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git log. ΠΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π² Π²ΡΠ΄Π°ΡΠ΅ ΠΈ Π±ΡΠ΄Π΅Ρ Π²Π°ΡΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ ΡΡ (ΡΠΈΡΡΠΎΠ±ΡΠΊΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ) ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ revert.
ΠΠΎΠΌΠ°Π½Π΄Π° git reset
ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git reset. ΠΠΎ Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ: ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΏΠΎΡΠ΅ΠΆΠ΅.
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΌΠ΅ΡΠ°Π΅Ρ HEAD Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΡΠΈΡ βmixed. ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΎΡΡΠ°Π½ΡΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΊΠ°ΠΊ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅.
ΠΠΏΡΠΈΡ βsoft ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π΅Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ (Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ) ΠΊΠ°ΠΊ staged.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ±ΡΠΎΡΠΈΡΡ Π²ΡΠ΅ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ Π½Π΅ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΡ βhard.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Ρ Π²Π΅ΡΠ½Π΅ΡΠ΅ΡΡ Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ΅ΠΌ ΡΠΎΡΡΠ΅ΡΠ΅ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π΅ ΠΏΠΎΠΏΠ°Π²ΡΠΈΠ΅ Π² ΠΊΠΎΠΌΠΌΠΈΡ.
Π§ΡΠΎ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ: reset ΠΈΠ»ΠΈ revert?
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ reset ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠ±ΡΠΎΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π»ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². Π ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³Π»ΠΈ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΡΠΎΡΡΠ΅ΡΠ΅.
ΠΠΎΠΌΠ°Π½Π΄Π° revert ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΎΡΠΌΠ΅Π½ΡΡΡΠΈΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². Π’Π°ΠΊ ΡΡΠΎ, Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²Π΅ΡΠ½ΡΡΡ, ΡΠΆΠ΅ Π±ΡΠ» Π·Π°ΠΏΡΡΠ΅Π½ Π² ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ revert.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊΠΎΠΉ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²Π΄ΡΡΠ³ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π±Π°Π³ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅, ΠΈΠ»ΠΈ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΎΠ²ΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΏΠΎΠΏΠ°ΡΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ!
ΠΠ°ΠΊ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ commit ΠΈ Π½Π΅ ΠΎΠ±Π»Π°ΠΆΠ°ΡΡΡΡ
ΠΠΎΠ·ΡΠΌΠ΅ΠΌ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠ΅ΡΠ°Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠΎ Π½Π° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ ΠΏΡΡΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΡ Π·Π°Π΄Π°ΡΡ Π±ΡΠ»ΠΎ Π±Ρ Ρ ΠΎΡΠΎΡΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΎΠ²Π°ΡΡ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, Π½Π° Π΄Π²Π΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°ΡΠΈ:
ΠΡΠΎΠ²Π΅ΡΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ Π΄Π° ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠΎ ΠΎΠ½ ΡΠΆΠ΅ Π½Π°ΡΠ°Π» Π΅Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ, ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½Ρ, ΠΈ ΡΡΠΎ ΠΆΠ΅ Π΄Π΅Π»Π°ΡΡ? ΠΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΆΠ΅!
git revert
Π Π°Π±ΠΎΡΠ° ΠΊΠΈΠΏΠΈΡ ΠΈ ΠΎΡΡΠ°Π»ΠΎΡΡ Π΄Π΅Π»ΠΎ Π·Π° ΠΌΠ°Π»ΡΠΌ β ΡΠΌΠ΅ΡΠ΄ΠΆΠΈΡΡ ΠΌΠ°ΡΡΠ΅Ρ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ.
Π ΡΡΠΎ ΠΆΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ? ΠΠΈ ΠΊΠ»Π°ΡΡΠ° Arithmetic, Π½ΠΈ ΠΊΠ»Π°ΡΡΠ° Numerical!
Π Π²ΡΠ΅ Π΄Π΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° git revert ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Ρ ΠΎΡΠΌΠ΅Π½ΠΎΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π½Π΅ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ. Π Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΡΠ»Π΅ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²Π΅ΡΠΎΠΊ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ 4 ΠΊΠΎΠΌΠΌΠΈΡΠ°:
Π’ΠΎ Π΅ΡΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Ρ ΠΎΡΠΌΠ΅Π½ΠΎΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ revert Π²ΡΡΠ΅Π» Π½Π°ΠΌ Π±ΠΎΠΊΠΎΠΌ.
git reset
git rebase
ΠΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠ΅ΡΠ½Π΅ΠΌΡΡ ΠΊ ΠΌΠΎΠΌΠ΅Π½ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄Π²ΡΡ
Π²Π΅ΡΠΎΠΊ numerical ΠΈ arithmetic ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ
Π’Π΅ΠΏΠ΅ΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠΌ pick Π½Π° drop. Π ΡΠΎΠ³Π΄Π° Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ Π½Π°ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠ±ΡΠΎΡΡΡΡΡ ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² Π²Π΅ΡΠΊΠ΅ numerical :
Π’ΠΎΠ³Π΄Π° Π² ΠΈΡΡΠΎΡΠΈΠΈ Ρ Π½Π°Ρ ΠΎΡΡΠ°Π½ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½ΡΠΆΠ½ΡΠ΅ Π½Π°ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ Π² master ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΎΠ±Π° ΠΊΠ»Π°ΡΡΠ°.
ΠΠ°Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ°Π±ΠΎΡΠΈΠΉ, ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΡΠ°Π±ΠΎΡΡ Π² ΡΠ°ΡΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅, Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΡΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π² ΠΎΠ±ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅, ΡΠΎ ΠΏΡΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ( git push ) git ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° ΡΡΡΠ°ΡΠ΅Π»Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² Π½Π΅ΠΉ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ.
Π§ΡΠΎΠ±Ρ Π½Π΅ Π±ΠΎΡΠΎΡΡΡΡ Ρ git, ΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π·Π°ΡΠ°Π½Π΅Π΅, Π° ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ»ΠΎΠ²ΠΈΡΡ ΡΡΡΠΏΡΠΈΠ·. Π‘ΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ Π»ΠΈ Π²Ρ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΡΠΈΡΡΠ°ΡΠΈΡΠΌ, ΠΈ Π΅ΡΠ»ΠΈ Π΄Π°, ΡΠΎ ΠΊΠ°ΠΊ Π²ΡΡ ΠΎΠ΄ΠΈΠ»ΠΈ ΠΈΠ· Π½ΠΈΡ ?
ΠΡΠΌΠ΅Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² Git
Apr 24, 2020 Β· 3 min read
ΠΡ Π²ΡΠ΅Π³Π΄Π° Π³ΠΎΡΠΎΠ²Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°ΡΡ Π±Π΅ΡΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Git, ΠΈ ΡΡΠ° ΡΡΠ°ΡΡΡ Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ. Git ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠΎΡΡΡΡΠ°ΡΡΠ΅ΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΡ ΠΎΡΠΌΠ΅Π½ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ! ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° Π½Π° ΠΏΠ°ΠΌΡΡΡ Π²Π°ΠΌ ΡΠΆΠ΅ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡ ΡΡΡΡΡΠΈ ΠΏΠ΅ΡΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΄Π΅Π»Π°Π»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ, ΡΡΠΎ Π² Π²Π°ΡΠΈ ΠΏΠ»Π°Π½Ρ ΠΎΠ½ΠΎ Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΠ»ΠΎ. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅β ΡΡΠΎ Π²Π΅Π»ΠΈΡΠ°ΠΉΡΠ°Ρ Π½Π΅ΡΠ΄Π°ΡΠ° Π²ΡΠ΅ΠΉ Π²Π°ΡΠ΅ΠΉ ΠΆΠΈΠ·Π½ΠΈ, ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ Π²Π΄ΠΎΡ ΠΈ Π΄ΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΡΡΠ°ΡΡΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°.
ΠΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΡΠΌΠ΅Π½Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² Git. ΠΡΠΌΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ βΠΏΠ΅ΡΠ²ΡΡ ΠΏΡΡΠ΅ΡΠΊΡβ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΠΈ Π΄Π²ΠΈΠ½ΡΡΡΡΡ Π΄Π°Π»ΡΡΠ΅.
ΠΡΠΌΠ΅Π½Π° Git Add
ΠΠ΄ ΠΈ Π½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ Git Π·Π²ΡΡΠΈΡ ΡΠ°ΠΊ: βΠΠ°ΠΊ ΠΎΡΠΊΠ°ΡΠΈΡΡ git add ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ?β ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π°Π΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ ΠΈΠ»ΠΈ Π²ΡΠ΅ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ, Π²Π΅ΡΡΠΌΠ° ΠΏΡΠΎΡΡΠΎΠ΅. Π§ΡΠΎΠ±Ρ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ», ΠΏΡΠΎΡΡΠΎ Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git reset :
ΠΠ»Ρ ΠΎΡΠΌΠ΅Π½Ρ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ°ΠΊ ΠΎΡΠΊΠ°ΡΠΈΡΡ Git Merge
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅ΠΆΠ΅Π»Π°Π΅ΠΌΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ. ΠΠΎ, ΠΊΠ°ΠΊ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΡ ΠΎΡΠΈΠ±ΠΊΡ! ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΡΠΆΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ·Π½Π°Π»ΠΈ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΠΎΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
ΠΠ°ΡΠ΅ΠΌ Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ ΠΊ ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Git ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ.
ΠΠ°ΠΊ ΠΎΡΠΊΠ°ΡΠΈΡΡ Git Reset
ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ ΡΡΠΏΠ΅ΡΠΊΠΎΡΠΎΡΠΊΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git reset:
ΠΡΠΌΠ΅Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Git
ΠΠΎΠΌΠ°Π½Π΄Ρ git reset ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ Π²Π½Π΅ΡΠ΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:
x Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅
ΠΡΡΠ³ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° git revert HEAD
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΠΎΠ±ΡΠΈΠΌΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ.
ΠΡΠΌΠ΅Π½Π° Git Rebase
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ git ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ Π΅Π΅ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ. Π‘Π»Π΅Π΄ΠΎΠΌ Π²Ρ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ ΡΡΠΎ Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π²Π°ΡΠΈΠΌ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΠΌ, ΠΈ Π·Π°Ρ ΠΎΡΠ΅Π»ΠΈ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΠΎΠ΅.
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± β Π½Π°ΠΉΡΠΈ Π³Π»Π°Π²Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π²Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ, Π·Π°ΠΏΡΡΡΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΡ ΠΈ Π²ΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Git. Π₯ΠΎΡΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΡΠΌΠ΅Π½Ρ ΠΈ Π½Π΅Ρ, Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΡΠΎ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎ ΠΎΡΠΈΠ±ΠΊΠ΅.