Git 2.40 เบเบฒเบ™เบ›เปˆเบญเบเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเปเบซเบผเปˆเบ‡

เบซเบผเบฑเบ‡เบˆเบฒเบเบชเบฒเบกเป€เบ”เบทเบญเบ™เบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเปเบซเบผเปˆเบ‡เปเบˆเบเบขเบฒเบ Git 2.40 เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒ. Git เป€เบ›เบฑเบ™เปœเบถเปˆเบ‡เปƒเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเป€เบงเบตเบŠเบฑเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ—เบตเปˆเบ™เบดเบเบปเบกเบ—เบตเปˆเบชเบธเบ”, เป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰ เปเบฅเบฐ เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเบนเบ‡, เบชเบฐเปœเบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบšเบšเบšเปเปˆเป€เบ›เบฑเบ™เป€เบชเบฑเป‰เบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เปเบ•เบเบ‡เปˆเบฒ เปเบฅเบฐ เบเบฒเบ™เบฅเบงเบกเบ•เบปเบง. เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเบชเบปเบกเบšเบนเบ™เบ‚เบญเบ‡เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบ„เบงเบฒเบกเบ•เป‰เบฒเบ™เบ—เบฒเบ™เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ retroactive, implicit hashing เบ‚เบญเบ‡เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เปเบ•เปˆเบฅเบฐเบ„เปเบฒเบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒ; เบกเบฑเบ™เบเบฑเบ‡เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบขเบฑเป‰เบ‡เบขเบทเบ™ tags เบšเบธเบเบ„เบปเบ™เปเบฅเบฐเบ„เปเบฒเบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒเบ—เบตเปˆเบกเบตเบฅเบฒเบเป€เบŠเบฑเบ™เบ”เบดเบˆเบดเบ•เบญเบ™เบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ.

เป€เบกเบทเปˆเบญเบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบฅเบธเป‰เบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบฎเบธเปˆเบ™เปƒเบซเบกเปˆเบฅเบงเบกเบกเบต 472 เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡, เบเบฒเบ™เบเบฐเบเบฝเบกเบ”เป‰เบงเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ 88 เบ„เบปเบ™, เปƒเบ™เบ™เบฑเป‰เบ™เบกเบต 30 เบ„เบปเบ™เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”. เบ™เบฐเบงเบฑเบ”เบ•เบฐเบเปเบฒเบ•เบปเป‰เบ™เบ•เป:

  • ะ’ ัะบั€ะธะฟั‚ git-jump ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ั€ะตะดะฐะบั‚ะพั€ะฐ Emacs, ะฟะพะผะธะผะพ ั€ะฐะฝะตะต ะฟะพะดะดะตั€ะถะธะฒะฐะตะผะพะณะพ ั€ะตะดะฐะบั‚ะพั€ะฐ Vim. Git-jump ะธัะฟะพะปัŒะทัƒะตั‚ัั ะดะปั ะฟะตั€ะตะดะฐั‡ะธ ะฒ ั‚ะตะบัั‚ะพะฒั‹ะน ั€ะตะดะฐะบั‚ะพั€ ะธะฝั„ะพั€ะผะฐั†ะธะธ ะพ ะฟะพะทะธั†ะธัั… ะฒ ั„ะฐะนะปะต ะดะปั ะฑั‹ัั‚ั€ะพะน ะฝะฐะฒะธะณะฐั†ะธะธ ะธ ะฟะตั€ะตั…ะพะดะฐ ะบ ั€ะตะดะฐะบั‚ะธั€ะพะฒะฐะฝะธัŽ ะบะพะดะฐ ะฒ ะพะฟั€ะตะดะตะปั‘ะฝะฝะพะผ ะผะตัั‚ะต. ะะฐะฟั€ะธะผะตั€, git-jump ะผะพะถะตั‚ ะฟั€ะธะผะตะฝัั‚ัŒัั ะดะปั ะฟะตั€ะตะบะปัŽั‡ะตะฝะธั ะฒ ั€ะตะดะฐะบั‚ะพั€ะต ะผะตะถะดัƒ ัั‚ั€ะพะบะฐะผะธ, ะฟะพะปัƒั‡ะตะฝะฝั‹ะผะธ ะฒ ั€ะตะทัƒะปัŒั‚ะฐั‚ะต ั€ะฐะทะฑะพั€ะฐ ะบะพะฝั„ะปะธะบั‚ะพะฒ ัะปะธัะฝะธั, ะพั†ะตะฝะบะธ ั€ะฐะทะปะธั‡ะธะน ะธ ะฒั‹ะฟะพะปะฝะตะฝะธั ะฟะพะธัะบะฐ (ะผะพะถะฝะพ ะฒั‹ะฟะพะปะฝะธั‚ัŒ ยซgit jump grep fooยป ะธ ะทะฐั‚ะตะผ ะฑั‹ัั‚ั€ะพ ะฟะตั€ะตะบะปัŽั‡ะฐั‚ัŒัั ะผะตะถะดัƒ ะฟะพะทะธั†ะธัะผะธ, ะฒ ะบะพั‚ะพั€ั‹ั… ะฒัั‚ั€ะตั‡ะฐะตั‚ัั ะผะฐัะบะฐ ยซfooยป).
  • ะ’ ยซgit cat-fileยป ะพะฑะตัะฟะตั‡ะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะฟั€ะธะผะตะฝะตะฝะธั ะพะฟั†ะธะน ยซ-sยป ะธ ยซโ€”batch-checkยป ะฒะผะตัั‚ะต ั ยซโ€”use-mailmapยป ะดะปั ะฟั€ะฐะฒะธะปัŒะฝะพะณะพ ะพะฟั€ะตะดะตะปะตะฝะธั ั€ะฐะทะผะตั€ะฐ ะพะฑัŠะตะบั‚ะฐ ั ัƒั‡ั‘ั‚ะพะผ ะทะฐะผะตะฝั‹ ะธะดะตะฝั‚ะธั„ะธะบะฐั‚ะพั€ะฐ, ะพััƒั‰ะตัั‚ะฒะปั‘ะฝะฝะพะน ะฝะฐ ะพัะฝะพะฒะต ะฟั€ะธะฒัะทะพะบ ะบ email, ะทะฐะดะฐะฝะฝั‹ั… ะฒ ั„ะฐะนะปะต mailmap (ั€ะฐะฝะตะต ะพะฟั†ะธั ยซโ€”use-mailmapยป ะฒะปะธัะปะฐ ั‚ะพะปัŒะบะพ ะฝะฐ ะฒั‹ะฒะพะด ัะพะดะตั€ะถะธะผะพะณะพ, ะฝะพ ะฝะต ัƒั‡ะธั‚ั‹ะฒะฐะปะฐ, ั‡ั‚ะพ ัั‚ะฐั€ั‹ะต ะธ ะทะฐะผะตะฝั‘ะฝะฝั‹ะต ะฟะฐั€ั‹ ะธะผั/email ะผะพะณัƒั‚ ะธะผะตั‚ัŒ ั€ะฐะทะฝั‹ะน ั€ะฐะทะผะตั€).
  • ะ’ ะบะพะผะฐะฝะดัƒ ยซgit check-attrยป ะดะพะฑะฐะฒะปะตะฝะฐ ะพะฟั†ะธั ยซโ€”sourceยป ะดะปั ะฒั‹ะฑะพั€ะฐ ะดะตั€ะตะฒะฐ ั ะฝะตะพะฑั…ะพะดะธะผั‹ะผ ั„ะฐะนะปะพะผ ยซ.gitattributesยป, ะบะพั‚ะพั€ั‹ะน ะฑัƒะดะตั‚ ะธัะฟะพะปัŒะทะพะฒะฐะฝ ะดะปั ะพะฟั€ะตะดะตะปะตะฝะธั ะฐะบั‚ัƒะฐะปัŒะฝั‹ั… ะฐั‚ั€ะธะฑัƒั‚ะพะฒ ะฒ ัƒัะปะพะฒะธัั… ะฝะฐะปะธั‡ะธั ะฒ ั€ะตะฟะพะทะธั‚ะพั€ะธะธ ะฝะตัะบะพะปัŒะบะธั… ั„ะฐะนะปะพะฒ ยซ.gitattributesยป.
  • ะ ะตะฐะปะธะทะฐั†ะธั ะบะพะผะฐะฝะดั‹ ยซgit bisectยป ะฟะตั€ะตะฟะธัะฐะฝะฐ ะฝะฐ ัะทั‹ะบะต ะกะธ ะธ ะฒัั‚ั€ะพะตะฝะฐ ะฒ ะพัะฝะพะฒะฝะพะน ะธัะฟะพะปะฝัะตะผั‹ะน ั„ะฐะนะป git (ั€ะฐะฝะตะต ะบะพะผะฐะฝะดะฐ ะฑั‹ะปะฐ ั€ะตะฐะปะธะทะพะฒะฐะฝะฐ ะฒ ั„ะพั€ะผะต Shell-ัะบั€ะธะฟั‚ะฐ).
  • ะฃะดะฐะปะตะฝะฐ ัั‚ะฐั€ะฐั ั€ะตะฐะปะธะทะฐั†ะธั ะบะพะผะฐะฝะดั‹ ยซgit add โ€”interactiveยป, ะฝะฐะฟะธัะฐะฝะฝะฐั ะฝะฐ Shell (ะฒ git 2.26 ะฑั‹ะป ะฟั€ะตะดะปะพะถะตะฝ ะฒัั‚ั€ะพะตะฝะฝั‹ะน ะฒะฐั€ะธะฐะฝั‚ ะฝะฐ ะกะธ, ะฝะพ ัั‚ะฐั€ะฐั ั€ะตะฐะปะธะทะฐั†ะธั ะฝะฐ Shell ะพัั‚ะฐะฒะฐะปะฐััŒ ะดะพัั‚ัƒะฟะฝะพะน ะธ ั€ะตะณัƒะปะธั€ะพะฒะฐะปะฐััŒ ะฝะฐัั‚ั€ะพะนะบะพะน add.interactive.useBuiltin).
  • ะ’ ะบะพะผะฐะฝะดัƒ ยซgit merge-treeยป ะดะพะฑะฐะฒะปะตะฝะฐ ะพะฟั†ะธั โ€˜โ€”merge-baseโ€™.
  • ะ’ ะบะพะผะฐะฝะดัƒ ยซgit range-diffยป ะดะพะฑะฐะฒะปะตะฝะฐ ะพะฟั†ะธั ยซโ€”abbrev=<num>ยป.
  • ะ”ะพะฑะฐะฒะปะตะฝะฐ ะฒะพะทะผะพะถะฝะพัั‚ัŒ ะฟะตั€ะตะพะฟั€ะตะดะตะปะตะฝะธั ั€ะตะดะฐะบั‚ะพั€ะฐ ัะฟะธัะบะพะฒ ะดะปั ะธะฝั‚ะตั€ะฐะบั‚ะธะฒะฝะพะณะพ ั€ะตะถะธะผะฐ ะบะพะผะฐะฝะดั‹ rebase ั‡ะตั€ะตะท ะฒั‹ัั‚ะฐะฒะปะตะฝะธะต ะฟะตั€ะตะผะตะฝะฝะพะน GIT_SEQUENCE_EDITOR ั‡ะตั€ะตะท ะบะพะผะฐะฝะดัƒ ยซgit varยป ะฟะพ ะฐะฝะฐะปะพะณะธะธ ั ยซgit var GIT_EDITORยป.
  • ะ’ ะฟะพะดัะธัั‚ะตะผัƒ ัƒั‡ั‘ั‚ะฝั‹ั… ะทะฐะฟะธัะตะน ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะฟะฐั€ะพะปะตะน ั ะพะณั€ะฐะฝะธั‡ะตะฝะฝั‹ะผ ัั€ะพะบะพะผ ะดะตะนัั‚ะฒะธั.
  • ะ’ ัั†ะตะฝะฐั€ะธัั… ะฐะฒั‚ะพะดะพะฟะพะปะฝะตะฝะธั ะฒะฒะพะดะฐ ะดะปั Bash ั€ะตะฐะปะธะทะพะฒะฐะฝ ั€ะตะถะธะผ ั€ะฐะฑะพั‚ั‹ ะฑะตะท ัƒั‡ั‘ั‚ะฐ ั€ะตะณะธัั‚ั€ะฐ ัะธะผะฒะพะปะพะฒ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™