เบเบฒเบ™เบ›เปˆเบญเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเปเบซเบผเปˆเบ‡เปเบˆเบเบขเบฒเบ Git 2.26

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

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

  • เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ เบฎเบธเปˆเบ™เบ—เบตเบชเบญเบ‡ เป‚เบ›เบฃเป‚เบ•เบ„เปเบเบฒเบ™เบชเบทเปˆเบชเบฒเบ™ Git, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเปƒเบŠเป‰เป€เบกเบทเปˆเบญเบฅเบนเบเบ„เป‰เบฒเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบˆเบฒเบเบ—เบฒเบ‡เป„เบเบเบฑเบšเป€เบŠเบตเบšเป€เบงเบต Git. เบชเบฐเบšเบฑเบšเบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡เป‚เบ›เป‚เบ•เบ„เบญเบ™เปเบกเปˆเบ™เบซเบ™เป‰เบฒเบชเบฑเบ‡เป€เบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบชเบฒเบ‚เบฒเปเบฅเบฐ tags เปƒเบ™เบ”เป‰เบฒเบ™เป€เบŠเบตเบŸเป€เบงเบต, เบชเบปเปˆเบ‡เบ„เบทเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบชเบฑเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒ. เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, เบ„เปเบฒเบชเบฑเปˆเบ‡เบ”เบถเบ‡เปƒเบ”เป†เบˆเบฐเบชเบปเปˆเบ‡เบฅเบนเบเบ„เป‰เบฒเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเป€เบ•เบฑเบกเบ‚เบญเบ‡เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบดเบ‡เบขเบนเปˆเปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบฅเบนเบเบ„เป‰เบฒเบˆเบฐเบ›เบฑเบšเบ›เบธเบ‡เบชเบฒเบ‚เบฒเบ”เบฝเบงเบซเบผเบทเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบชเปเบฒเป€เบ™เบปเบฒเบ‚เบญเบ‡ repository เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปเบกเปˆเบ™เบ—เบฑเบ™เบชเบฐเป„เบซเบก. เบ™เบฐเบงเบฑเบ”เบ•เบฐเบเปเบฒเบ—เบตเปˆเป‚เบ”เบ”เป€เบ”เบฑเปˆเบ™เบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบซเบกเปˆเปƒเบซเป‰เบเบฑเบšเป‚เบ›เป‚เบ•เบ„เบญเบ™เบเป‰เบญเบ™เบงเปˆเบฒเบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบซเบกเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบท. เบฅเบฐเบซเบฑเบ”เบฅเบนเบเบ„เป‰เบฒเบเบฑเบ‡เบ„เบปเบ‡เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเป‚เบ›เป‚เบ•เบ„เบญเบ™เป€เบเบปเปˆเบฒเปเบฅเบฐเบชเบฒเบกเบฒเบ”เบชเบทเบšเบ•เปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ—เบฑเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบซเบกเปˆเปเบฅเบฐเป€เบเบปเปˆเบฒ, เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบซเบผเบธเบ”เบฅเบปเบ‡เบเบฑเบšเบชเบฐเบšเบฑเบšเบ—เปเบฒเบญเบดเบ”เบ–เป‰เบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบšเปเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบตเบชเบญเบ‡.
  • เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "-show-scope" เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเบ„เปเบฒเบชเบฑเปˆเบ‡ "git config", เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เบฅเบฐเบšเบธเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. Git เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ•เปˆเบฒเบ‡เป†: เปƒเบ™ repository (.git/info/config), เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบœเบนเป‰เปƒเบŠเป‰ (~/.gitconfig), เปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบปเปˆเบงเบฅเบฐเบšเบปเบš (/etc/gitconfig), เปเบฅเบฐเบœเปˆเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡. เบ•เบปเบงเป€เบฅเบทเบญเบเป€เบชเบฑเป‰เบ™ เปเบฅเบฐเบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก. เป€เบกเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ” "git config" เบกเบฑเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปเบ™เปˆเบ™เบญเบ™. เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "--show-origin" เปเบกเปˆเบ™เบกเบตเบขเบนเปˆ, เปเบ•เปˆเบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฐเปเบ”เบ‡เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ›เบซเบฒเป„เบŸเบฅเปŒเบ—เบตเปˆเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ–เบทเบเบเปเบฒเบ™เบปเบ”, เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เบฑเป‰เบ‡เปƒเบˆเปเบเป‰เป„เบ‚เป„เบŸเบฅเปŒ, เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบŠเปˆเบงเบเบ–เป‰เบฒเบ—เปˆเบฒเบ™. เบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เบ„เปˆเบฒเบœเปˆเบฒเบ™ "git config" เป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเป€เบฅเบทเบญเบ "--system", "--global" เบซเบผเบท "-local". เบ•เบปเบงเป€เบฅเบทเบญเบเปƒเปเปˆ "--show-scope" เบชเบฐเปเบ”เบ‡เบšเปเบฅเบดเบšเบปเบ”เบ™เบดเบเบฒเบกเบ•เบปเบงเปเบ› เปเบฅเบฐเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบš -show-origin:

    $ git --list --show-scope --show-origin
    เป„เบŸเบฅเปŒเบ—เบปเปˆเบงเป‚เบฅเบ:/home/user/.gitconfig diff.interhunkcontext=1
    เป„เบŸเบฅเปŒเบ—เบปเปˆเบงเป‚เบฅเบ:/home/user/.gitconfig push.default=current
    [โ€ฆ] local file:.git/config branch.master.remote=origin
    เป„เบŸเบฅเปŒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™:.git/config branch.master.merge=refs/heads/master

    $ git config --show-scope --get-regexp 'diff.*'
    global diff.statgraphwidth 35
    local diff.colormoved เบ—เบปเปˆเบ‡เบžเบฝเบ‡

    $ git config --global --unset diff.statgraphwidth

  • เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบœเบนเบเบกเบฑเบ” เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเบณเบ•เบปเบง เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เปเบฒเปƒเบŠเป‰เบซเบ™เป‰เบฒเบเบฒเบเปƒเบ™ URLs. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ HTTP เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบงเปƒเบ”เป†เปƒเบ™ Git เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเปเบฒเบ™เบปเบ”เบ—เบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบฑเบ‡เบซเบกเบปเบ” (http.extraHeader, credential.helper) เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ URL (credential.https://example.com.helper, credential.https: // เบ•เบปเบงเบขเปˆเบฒเบ‡. com.helper). เบˆเบปเบ™เบเปˆเบงเบฒเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, wildcards เป€เบŠเบฑเปˆเบ™ *.example.com เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ HTTP, เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒ. เปƒเบ™ Git 2.26, เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเบฅเบปเบšเบฅเป‰เบฒเบ‡เปเบฅเบฐ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบŠเบทเปˆเบœเบนเป‰เปƒเบŠเป‰เบเบฑเบšเป‚เบ”เป€เบกเบ™เบเปˆเบญเบเบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบฅเบฐเบšเบธเป„เบ”เป‰:

    [เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบง "https://*.example.com"]

    เบŠเบทเปˆเบœเบนเป‰เปƒเบŠเป‰ = taylor

  • เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ cloning เบšเบฒเบ‡เบชเปˆเบงเบ™ (clones เบšเบฒเบ‡เบชเปˆเบงเบ™) เบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป‚เบญเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบชเปเบฒเป€เบ™เบปเบฒเบ—เบตเปˆเบšเปเปˆเบ„เบปเบšเบ–เป‰เบงเบ™เบ‚เบญเบ‡ repository. เบเบฒเบ™เบ›เปˆเบญเบเบ•เบปเบงเปƒเบซเบกเปˆเป€เบžเบตเปˆเบกเบ„เปเบฒเบชเบฑเปˆเบ‡เปƒเบซเบกเปˆ "git sparse-checkout add", เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เป€เบžเบทเปˆเบญเบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ "checkout" เปƒเบซเป‰เบเบฑเบšเบžเบฝเบ‡เปเบ•เปˆเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ•เบปเป‰เบ™เป„เบกเป‰เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบ, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบฅเบฒเบเบŠเบทเปˆเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "git sparse-checkout set" (เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป€เบžเบตเปˆเบกโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เป‚เบ”เบโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹, เป‚เบ”เบโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เบ„เบทเบ™โ€‹เปƒเบซเบกเปˆโ€‹เบšเบฑเบ™โ€‹เบŠเบตโ€‹เบฅเบฒเบโ€‹เบเบฒเบ™โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เปƒเบ™โ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบ„เบฑเป‰เบ‡โ€‹)โ€‹.
    เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบžเบทเปˆเบญ clone git / git repository เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™ committing blobs, เบˆเปเบฒเบเบฑเบ” checkout เบžเบฝเบ‡เปเบ•เปˆเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบฎเบฒเบเบ‚เบญเบ‡เบชเปเบฒเป€เบ™เบปเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบ, เปเบฅเบฐเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบซเบกเบฒเบ checkout เบชเปเบฒเบฅเบฑเบš "t" เปเบฅเบฐ "เป€เบญเบเบฐเบชเบฒเบ™" เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบต, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”:

    $ git clone --filter=blob:none --sparse [email protected]:git/git.git

    $ cd git
    $ git sparse-checkout init --cone

    $ git sparse-checkout เป€เบžเบตเปˆเบก t
    ... .
    $ git sparse-checkout เป€เบžเบตเปˆเบกเป€เบญเบเบฐเบชเบฒเบ™
    ... .
    $ git sparse-checkout list
    เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™
    t

  • เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡ "git grep", เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ„เบปเป‰เบ™เบซเบฒเบ—เบฑเบ‡เป€เบ™เบทเป‰เบญเบซเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบ‚เบญเบ‡ repository เปเบฅเบฐเบเบฒเบ™เปเบเป‰เป„เบ‚เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”, เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เป€เบžเบทเปˆเบญเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเบฐเปเบเบ™เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เบ•เบปเป‰เบ™เป„เบกเป‰เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเปƒเบŠเป‰เบซเบผเบฒเบเบเบฐเบ—เบนเป‰ ("git grep -threads"), เปเบ•เปˆเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบกเปˆเบ™เป€เบ›เบฑเบ™เบเบฐเบ—เบนเป‰เบ”เบฝเบง. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเป‚เบ”เบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบเบฒเบ™เบญเปˆเบฒเบ™เบˆเบฒเบเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบงเบฑเบ”เบ–เบธ. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบˆเปเบฒเบ™เบงเบ™เบเบฐเบ—เบนเป‰เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ—เบปเปˆเบฒเบเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ CPU cores, เป€เบŠเบดเปˆเบ‡เปƒเบ™เบเปเบฅเบฐเบ™เบตเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "-threads" เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบเปˆเบญเบ, เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบฅเบฐเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบญเบทเปˆเบ™เป†เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡ "git worktree", เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบซเบผเบฒเบเป†เบชเปเบฒเป€เบ™เบปเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ repository.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบตเบ—เบตเปˆเบชเบปเบ”เปƒเบชเบ—เบตเปˆเบกเบต ANSI เบฅเปเบฒเบ”เบฑเบšเบซเบ™เบต. เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเปเบฒเบฅเบฑเบšเบชเบตเบ—เบตเปˆเป€เบ™เบฑเป‰เบ™ "git config -color" เบซเบผเบท "git diff -color-moved" เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ” "%C (brightblue)" เบœเปˆเบฒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "--format" เบชเปเบฒเบฅเบฑเบšเบชเบตเบŸเป‰เบฒเบชเบปเบ”เปƒเบช.
  • เป€เบžเบตเปˆเบกเบชเบฐเบ„เบฃเบดเบšเป€เบงเบตเบŠเบฑเบ™เปƒเปเปˆเปเบฅเป‰เบง fsmonitor-watchman, เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเบเบปเบ™เป„เบ เป€เบŸเบชเบšเบธเปŠเบ Watchman เป€เบžเบทเปˆเบญเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบŸเบฅเปŒ เปเบฅเบฐเบฎเบนเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เป„เบŸเบฅเปŒเปƒเปเปˆ. เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ git เปเบกเปˆเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™ เป€เบžเบทเปˆเบญเบ—เบปเบ”เปเบ—เบ™ hook เปƒเบ™ repository เป„เบ”เป‰.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป€เบžเบทเปˆเบญเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เป‚เบ„เบ™เบšเบฒเบ‡เบชเปˆเบงเบ™เปƒเบ™เป€เบงเบฅเบฒเปƒเบŠเป‰เปเบœเบ™เบ—เบตเปˆเบšเบดเบ”
    (เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ bitmap) เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เบ‚เบญเบ‡เบงเบฑเบ”เบ–เบธเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบœเบปเบ™เบœเบฐเบฅเบดเบ”. เบเบฒเบ™เบเบงเบ”เบชเบญเบš blobs (โ€”filter=blob:none เปเบฅเบฐ โ€”filter=blob:limit=n) เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™ cloning เบšเบฒเบ‡เบชเปˆเบงเบ™เปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปเบฅเป‰เบง.
    เป„เบงโ€‹เบ‚เบถเป‰เบ™โ€‹เบขเปˆเบฒเบ‡โ€‹เบซเบผเบงเบ‡โ€‹เบซเบผเบฒเบโ€‹. GitHub เบ›เบฐเบเบฒเบ” patches เบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ cloning เบšเบฒเบ‡เบชเปˆเบงเบ™.

  • เบ„เปเบฒเบชเบฑเปˆเบ‡ "git rebase" เป„เบ”เป‰เบ–เบทเบเบเป‰เบฒเบเป„เบ› backend เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป‚เบ”เบเปƒเบŠเป‰เบเบปเบ™เป„เบ 'merge' เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ (เป€เบกเบทเปˆเบญเบเปˆเบญเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบš "rebase -i") เปเบ—เบ™ 'patch+apply'. backends เบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปƒเบ™เบšเบฒเบ‡เบงเบดเบ—เบตเบ™เป‰เบญเบเป†, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เปเป‰เบ‚เบฑเบ”เปเบเปˆเบ‡ (git rebase --continue), backend เปƒเบซเบกเปˆเบชเบฐเป€เบซเบ™เบตเปƒเบซเป‰เปเบเป‰เป„เบ‚เบ‚เปเป‰เบ„เบงเบฒเบกเบ„เปเบฒเบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒ, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบญเบฑเบ™เป€เบเบปเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเปƒเบŠเป‰เบ‚เปเป‰เบ„เบงเบฒเบกเป€เบเบปเปˆเบฒ. เป€เบžเบทเปˆเบญเบเบฑเบšเบ„เบทเบ™เป„เบ›เบชเบนเปˆเบžเบถเบ”เบ•เบดเบเปเบฒเป€เบเบปเปˆเบฒ, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "--apply" เบซเบผเบทเบเปเบฒเบ™เบปเบ”เบ•เบปเบงเปเบ›เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ 'rebase.backend' เป€เบ›เบฑเบ™ 'apply'.
  • เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ—เบตเปˆเบฅเบฐเบšเบธเบœเปˆเบฒเบ™ .netrc เป„เบ”เป‰เบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ›เบฑเบ™เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบญเบญเบเบˆเบฒเบเบเปˆเบญเบ‡.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ gpg.minTrustLevel เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบฅเบฐเบ”เบฑเบšเบ„เบงเบฒเบกเป„เบงเป‰เบงเบฒเบ‡เปƒเบˆเบ‚เบฑเป‰เบ™เบ•เปˆเปเบฒเบชเปเบฒเบฅเบฑเบšเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ•เปˆเบฒเบ‡เป†เบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เบฅเบฒเบเป€เบŠเบฑเบ™เบ”เบดเบˆเบดเบ•เบญเบ™.
  • เป€เบžเบตเปˆเบก "--pathspec-from-file" เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "git rm" เปเบฅเบฐ "git stash".
  • เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰เบชเบทเบšเบ•เปเปˆเปƒเบ™เบเบฒเบ™เบเบฐเบเบฝเบกเบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบฅเบฐเบšเบปเบšเบเบฒเบ™เปเบเบฑเบ” SHA-2 เปเบ—เบ™ SHA-1.

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

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