ืืืฉืืืื ืืืืืืจื ืืงืืืืช, ืืืจืกื ืืืืฉื ืืืื 583 ืฉืื ืืืื, ืฉืืืื ื ืืืฉืชืชืคืืช 84 ืืคืชืืื, ืืชืืื 32 ืืงืื ืืืง ืืคืืชืื ืืจืืฉืื ื.
- ืืืคืฉืจืืช ืฉื ืฉืืืื ืืืงื ืืชืงืจืืช ืืืืฆืื ืืืืื ืืช ืืืื, ืืืืคืฉืจืช ืืืขืืืจ ืจืง ืืืง ืืื ืชืื ืื ืืืขืืื ืขื ืขืืชืง ืื ืฉืื ืฉื ืืืืืจ. ืฉืืืื ืืืคืืกื ืืขืชืืง ืืช ืื ืื ืชืื ืื ืืืืืืจ, ืืืื ืื ืืจืกื ืฉื ืื ืงืืืฅ ืืืืกืืืจืืืช ืืฉืื ืืืื. ืขืืืจ ืืืืจืื ืืืืืื ืืืื, ืืขืชืงืช ื ืชืื ืื ืืืจืืช ืืืืืื ืืฉืืขืืชื ืืชืขืืืจื ืืืฉืื ืืืืกืง, ืื ืื ืืืคืชื ืืขืื ืืื ืจืง ืืชืช-ืงืืืฆื ืฉื ืืงืืฆืื. ืืื ืืืงื ืขื ืืืืืจ ืจืง ืืืง ืืขืฅ ืืืงืืจ ืืขืืื, ืืืืืืจื ืืืืฉื ืืฆืืื ืคืงืืืช "sparse-checkout" ื ืืกืืื ืืช ืืืคืฉืจืืช "--sparse" ืืืฉื ืขืืืจ ืืคืงืืื "clone".
ืืขืืจ, ืชืืืื ืืฉืืืื ืืกืืงืืืื ืืืฆืข ืืืืฆืขืืช ืืืฉืืื
ืืกื ื ืื ืืกื ื ืชืืื ืืืืชืจ ืืืคืฉืจืืช "-ืืื ืชืฉืืื" ืืื ืืืื ืืช ืืืืื ืืงืืฆืื ืืืกืจืื. ืืืืจ ืืื, ืืคื ื ืืืฆืืข ืคืขืืืช ืืชืฉืืื, ืืื ืฆืืจื ืืืคืขืื ืืช ืืืืจืช core.sparseCheckout ืืืืืืืจ ืจืฉืืื ืฉื ืืคืืกื ื ืชืื ืฉืื ื ืืืื ืืงืืืฅ .git/info/sparse-checkout. ืืืืืื, ืืื ืืฉืืคื ืืื ืืชืืื ืืืื ืืข ืืืืืฅ ืฉื ืงืืฆืื ืืชืืงืืืช ืืฉื ื ืืขืืืง 2 ืื ืืืชืจ, ืชืืื ืืืจืืฅ:git clone --filter=blob:none --no-checkout /your/repository/here repo
ืจืืคื ืฉื $ CD
$ cat >.git/info/sparse-checkout
/*
!/*
EOF
$ git config core.sparseCheckout 1
$ git checkout.ืืคืงืืื ืืืืฉื "git sparse-checkout" ืืคืฉืืช ืืืื ืืช ืืขืืืื ืืืฆืืฆืืช ืืช ืชืืืื ืืจืืื ืืขืืืื ืขื ืืืืจ ืื ืฉืื ืืคืงืืืืช ืืืืืช:
git clone --filter=blob:none --ืืืืืืช /ืืืืจ/ืืืืจ/ืืื ืืืืจ
git sparse-checkout set /path/to/check/outืืคืงืืื sparse-checkout ืืืคืฉืจืช ืื ืืืืืืจ ืจืฉืืื ืฉื ื ืชืืืื ืืงืืคื (ืกื) ืืืื ืืืืืืจ ืืื ืืช ืืช .git/info/sparse-checkout, ืืื ืื ืืืฆืื ืืช ืจืฉืืืช ืื ืชืืืื ืื ืืืืืช (ืจืฉืืื) ืืืืคืขืื ืื ืืืฉืืืช ืืช ืืชืฉืืื ืืืืงื (ืืคืขื /disable).
ืืื ืืืืขื ืืช ืืขืืืื ืขื ืืืืจืื ืืืืืื ืืืื ืืจืฉืืืืช ืฉื ืชืื ืืืช, "
git config core.sparseCheckoutCone ", ืฉืืืืื ืชืื ืืืช ืืืชืจืืช (ืืืงืื ืืคืืกื .gitignore ืฉืจืืจืืชืืื, ืืชื ืืืื ืืฆืืื ืื ืืฉ ืืืืฆืื ืืช ืื ืื ืชืืืื ืืื ืืงืืฆืื ืืชืืงืืืช ืืฉื ื ื ืชืื ื). ืืืืืื, ืื ืืืืืจ ืืืื ืืฉ ืกืคืจืืื "A/B/C" ืืื ืืขืืืื ืืจืืืืช ืืชืืงืืืช ืืืฉื ื "C", ืื ืืืฉืจ ืืชื ืืคืขืื ืืช ืืฆื sparseCheckoutCone, ืืคืงืืื "git sparse-checkout set A/B/ C ืืืืฅ ืืช ืื ืืชืืื ืฉื "C", ืืื ื-"A" ื-"B" ืืื ืืืืฅ ืจืง ืืช ืืืืงืื ืืืจืืฉืื ืืขืืืื ืขื "C". - ืืืชืืขืื ("git rebase -h"), ืื ืืืคื ืืืช ืืืคืฉืจืืช "--preserve-merges" ืืืกืจื, ืืฉืจ ืืืฆืื ืืฉืืืืฉ ืืืฉ ืืืฉืชืืฉ ืืืงืื ืืืช ืืื ืืืขืืืจ ืงืืืฆื ืฉื commits.
git rebase --rebase-ืืืืื ". - ืืื ืืฉืคืจ ืืช ืืงืจืืืืช ืฉื ืืืืขืืช ืขื ืชืืงืื ืื ืฉื ืฉืืื ืืจืฉืืืืช ืชืคืืฆื, ื ืืกืคื ืืืคืฉืจืืช "git format-patch โcover-from-description subject", ืืฉืฆืืื, ืืคืกืงื ืืจืืฉืื ื ืืืงืกื ืชืืืืจ ืืกื ืืฃ ืืฉืืฉืช ืื ืืฉื ืฉื ืืืชื ืืืกืื ืืกื ืฉื ืืืืื.
- ืชืืืื ืืืืฉืืช ืืฉืืืืฉ ืืืฉืืื ืืคืงืืื "git apply -3way" ืืืืืจืช "merge.conflictStyle" ("git apply" ืืืงืืช ืืขืช ืืืฉืืื ืืช ืกืื ืื ืชืืืืจ ืืืชื ืืฉืืช ื-merge.conflictStyle ืืืฉืจ ืืฉ ืฆืืจื ืืคืชืืจ ืืช ืืืชื ืืฉืืช ืืืืจ ื ืืกืืื ืืื ืืืืื ืงืืืฅ ืชืืงืื ืขื ืืืืืจ).
- ืงืื ืืืืจืช ืืคืื ืงืฆืื ืืืฉืืฉ ืืคืขืืืืช ืืืื "git diff/grep --show-function/-function-context" ืืืจืื ืืื ืืชืืื ืืืืืจืช ืืืืืืช ืคืื ืงืฆืืืช ืืชืืื ืืืช ืฉืคื
ืกื ืืืื . - ื ืืกืคื ืืคืฉืจืืช ืืืฉื ื-"git add", "git commit", "git reset" ืืคืงืืืืช ื ืืกืคืืช - "-pathspec-from-file", ืืืืคืฉืจืช ืืืขืื ืจืฉืืื ืฉื ื ืชืืืื ืืงืืืฅ ืื ืืจื ืงืื , ืืืงืื ืืจืฉืื ืืืชื ืืฉืืจืช ืืคืงืืื.
- ืืืขืื ืขื ืืืืื ืฉืืืช ืืืืฉ ืืจืืช ืืกืคืจืืื ืืขืช ืืชืืืช commit ื ืคืชืจื. ืืืืืจื ืื ืขืืื ืื ืืชืืื ืฉื ืกืคืจืืืช ืืฉื ื ืืืขืืจ ืืฉืืจืฉ ืืืืืจ.
- ืืืฆืข ืืืฉืื ืจืืฉืื ื ืฉื ืืคืงืืื "git add -i" ืืืขืืฆืืช ืืืืฉ, ืืืืคืฉืจ ืื ืืืืกืืฃ ืชืืื ืฉืื ื ืืืืคื ืืื ืืจืืงืืืื, ืฉื ืืชื ืืืืฉ ื-Perl ื-C. ืขืืืื ืืืื ืฉื ืืคืงืืื "git add -p" ืืชืืฆืขืช.
- ืืคืงืืื "git log โgraph" ืขืืจื ืืืืฉ, ืืืฆืจื ืชืืื ืช ASCII ืฉื ืืจืฃ ืขื ืืืกืืืจืืืช ืืฉืื ืืืื ืืืืืจ. ืืขืืืื ืืืืืืฉ ืืคืฉืจ ืืฉืคืจ ืืืคืฉื ืืืืคื ืืฉืืขืืชื ืืช ืืคืื ืืืื ืืขืืืช ืืช ืืื ื ืืกืืคืืจ, ืื ืฉืืืฉื ืคืชืจ ืืช ืืืขืื ืฉืืชืืื ื ืืชืจืืืช ืืขืืจ ืืจืืื ืงื ืืืจืืื ื.
- ืืืคืฉืจืืช "git log --format=.." ืืืคืฉืจืช ืื ืืฉื ืืช ืืช ืคืืจืื ืืคืื,
ืืืจืืืช ืขื ืชืืืื ืืืืื "l/L" ืืื ืืืฆืื ืจืง ืืช ืืืืง ืฉื ืืชืืืช ืืืื"ื ืืืฆืืื ืืคื ื ืืกืื "@" (ืืืืืื, ืฉืืืืฉื ืืืฉืจ ืืื ืืืคืชืืื ืืฉ ืืช ืื ืืืืืืืืื ืืืืชื ืชืืื). - ื ืืกืคื ืชืช-ืคืงืืื "set-url" ืืคืงืืื "git submodule".
- ืขืจืืืช ืืืืืงื ืขืืืื ื ืืงืจืืช ืืืขืืจ ื
ืืืืืจืืชื ืืืืืื SHA-2 ืืืงืื SHA-1.
ืืงืืจ: OpenNet.ru