ANDROID_LIVE Telegram 923
​​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 β€” число ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ.
πŸ”₯26πŸ‘12πŸ‘1



tgoop.com/android_live/923
Create:
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

View MORE
Open in Telegram


Telegram News

Date: |

Informative Those being doxxed include outgoing Chief Executive Carrie Lam Cheng Yuet-ngor, Chung and police assistant commissioner Joe Chan Tung, who heads police's cyber security and technology crime bureau. Users are more open to new information on workdays rather than weekends. β€œ[The defendant] could not shift his criminal liability,” Hui said. SUCK Channel Telegram
from us


Telegram Android Live πŸ€–
FROM American