ScalarC# 實現(xiàn)的巨型 Git 倉庫管理工具
Scalar 是一個使用 C# 編寫的 .NET Core 應(yīng)用程序,僅支持在 Windows 和 macOS 平臺中運行。Scalar 通過設(shè)置所建議的配置值和運行后臺維護來最大程度優(yōu)化 Git 命令的性能。無論開發(fā)者使用什么服務(wù)來托管代碼倉庫,Scalar 都能有效地加速 Git 指令。
微軟表示,只要使用 Scalar 為體積最大的代碼倉庫進行注冊,就能馬上感受到 Git 執(zhí)行速度大的幅提升。
Scalar 目前使用稀疏檢出而非虛擬文件系統(tǒng),因此在執(zhí)行 Git 命令時會存在瓶頸,特別是git checkout 的速度不及 VFS for Git,微軟正在研究并行版本的git checkout,以提高執(zhí)行性能。
使用示例
使用以下命令克隆測試倉庫并初始化一些稀疏內(nèi)容,在 macOS Terminal 或 Windows 的 Git Bash 中運行這些命令。
$ scalar clone https://dev.azure.com/gvfs/ci/_git/ForTests
Clone parameters:
Repo URL: https://dev.azure.com/gvfs/ci/_git/ForTests
Branch: Default
Cache Server: Default
Local Cache: C:\.scalarCache
Destination: C:\_git\ForTests
FullClone: False
Authenticating...Succeeded
Querying remote for config...Succeeded
Using cache server: None (https://dev.azure.com/gvfs/ci/_git/ForTests)
Cloning...Succeeded
Fetching commits and trees from origin (no cache server)...Succeeded
Configuring Watchman...Succeeded.
Validating repo...Succeeded
$ cd ForTests/src
$ ls
AuthoringTests.md GvFlt_EULA.md GVFS.sln License.md nuget.config Protocol.md Readme.md Settings.StyleCop
$ git sparse-checkout set GVFS/GVFS.Common GVFS/GVFS.UnitTests GitHooksLoader
$ ls
AuthoringTests.md GitHooksLoader/ GvFlt_EULA.md GVFS/ GVFS.sln License.md nuget.config Protocol.md Readme.md Settings.StyleCop
$ ls GVFS
GVFS.Common/ GVFS.UnitTests/ LibGit2Sharp.NativeBinaries.props ProjectedFSLib.NativeBinaries.props
$ git sparse-checkout set GVFS/GVFS GVFS/GVFS.Common GVFS/GVFS.UnitTests GitHooksLoader
$ ls GVFS
GVFS/ GVFS.Common/ GVFS.UnitTests/ LibGit2Sharp.NativeBinaries.props ProjectedFSLib.NativeBinaries.props評論
圖片
表情
