tgoop.com/android_live/923
Last Update:
ββGit bisect
#ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
ΠΠ°Π²Π½ΡΠΌ-Π΄Π°Π²Π½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π» ΠΎ ΡΠ°ΠΊΠΎΠΌ ΠΊΡΡΡΠ΅ΠΉΡΠ΅ΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ΅, ΠΊΠ°ΠΊ git bisect. Π‘ ΡΠ΅Ρ
ΠΏΠΎΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ, ΠΈ Ρ
ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π±ΡΠ» Π² Π°ΡΡΠ΅Π½Π°Π»Π΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
π‘Π’ΠΈΠΏΠΈΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π΅ Π±ΡΠ»ΠΎ Π² ΠΏΡΠΎΡΠ»ΠΎΠΌ ΡΠ΅Π»ΠΈΠ·Π΅, Π° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π»ΠΈΠ·Π°ΠΌΠΈ ΠΏΡΠΎΡΠ»ΠΎ ΡΠΆΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
ΠΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π²ΡΡΡΠ½ΡΡ Π²Π΅ΡΡ ΠΊΠΎΠ΄ β ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈ Π΄ΠΎΠ»Π³ΠΎ, Π΄Π° ΠΈ Π½Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΈΠ²Π½ΠΎ.
Π Π²ΠΎΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ Π½Π°ΠΌ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ, Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ β git bisect.
Π§ΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ:
1) ΠΡΠΊΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ git
ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΠΏΠ°ΠΏΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
2) ΠΠ²Π΅ΡΡΠΈ git checkout <commit hash>
, Π³Π΄Π΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΊΠΎΠ±ΠΎΠΊ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
3) ΠΠ°ΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git bisect start
.
4) ΠΠΎΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡ ΠΏΠ»ΠΎΡ
ΠΈΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git bisect bad
.
5) ΠΠΎΠΌΠ΅ΡΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡ, Π³Π΄Π΅ ΡΠΎΡΠ½ΠΎ Π½Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git bisect good <commit hash>
.
6) ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· git
Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡ Π² Π½ΡΠΆΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ Ρ
ΠΎΡΠΎΡΠΈΠΌ ΠΈ ΠΏΠ»ΠΎΡ
ΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°. Π‘ΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΠ΅, ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°. ΠΡΠ»ΠΈ Π΄Π°, ΡΠΎ Π²Π²ΠΎΠ΄ΠΈΡΠ΅ git bisect bad
, Π΅ΡΠ»ΠΈ ΠΆΠ΅ Π½Π΅Ρ, ΡΠΎ git bisect good
.
7) ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° Π²Π²ΠΎΠ΄ΠΈΡΠ΅ git bisect reset
, ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅.
Π£ Π²Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ Π½Π°ΠΉΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π·Π° log n ΡΠ°Π³ΠΎΠ², Π³Π΄Π΅ n β ΡΠΈΡΠ»ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ.
BY Android Live π€

Share with your friend now:
tgoop.com/android_live/923