Git 使用经验第一弹

Git 使用经验第一弹

💡 原文中文,约2500字,阅读约需6分钟。
📝

内容提要

本文介绍了如何通过git-filter-repo工具分析和删除大文件,以优化Git仓库大小,并配置Git Credential Manager实现HTTP免密,简化多仓库认证。

🎯

关键要点

  • 使用git-filter-repo工具分析和删除大文件以优化Git仓库大小。

  • 安装git-filter-repo工具包:pip install git-filter-repo。

  • 执行git filter-repo --analyze生成分析文件,查看大文件。

  • 使用git filter-repo删除大文件并回收空间,执行垃圾回收和优化。

  • 确认删除成功后,查看Git仓库和项目的大小。

  • 配置Git Credential Manager实现HTTP免密,简化多仓库认证。

  • 在Windows中安装Git时选择Git Credential Manager Core选项。

  • 在WSL中配置Git使用Windows的GCM,设置credential.helper。

  • 设置多个远端仓库独立认证,使用credential.useHttpPath。

  • 确认当前认证方案,设置同一站点只需一次输入账号密码。

  • 为指定站点单独设置单次认证,清除旧的凭据条目。

  • 重新推送输入账号密码后,同一站点下的项目无需重新认证。

🔎

延伸解读

优化Git仓库的重要性

使用git-filter-repo工具清理大文件可以显著减小Git仓库的体积,提升性能。对于频繁使用Git的开发者来说,定期进行仓库优化是必要的,以避免因仓库过大导致的操作缓慢和存储空间不足的问题。

Git Credential Manager的配置优势

配置Git Credential Manager可以简化多仓库的认证过程,避免重复输入密码。特别是在处理多个远端仓库时,合理设置credential.useHttpPath选项,可以有效减少认证的繁琐性,提高工作效率。

注意事项与风险

在使用git filter-repo删除大文件时,务必确认删除操作的成功与否,以免误删重要数据。此外,强制推送可能会导致数据丢失,因此在执行此操作前应确保备份重要的分支和数据。

延伸问答

如何使用git-filter-repo工具分析和删除大文件?

可以通过执行命令git filter-repo --analyze生成分析文件,查看大文件,然后使用git filter-repo删除大文件并回收空间。

如何安装git-filter-repo工具?

可以通过在虚拟环境中执行命令pip install git-filter-repo来安装git-filter-repo工具。

如何配置Git Credential Manager实现HTTP免密?

在Windows中安装Git时选择Git Credential Manager Core选项,并在WSL中配置Git使用Windows的GCM,设置credential.helper。

如何确认删除大文件是否成功?

可以通过执行git log --all --pretty=format:'' --name-only | grep 'data/input_data'来确认删除是否成功,如果没有输出则说明成功。

如何查看Git仓库和项目的大小?

可以使用du -sh .git查看Git仓库大小,使用du -sh .查看当前项目的大小。

如何设置多个远端仓库独立认证?

可以通过执行git config --global credential.useHttpPath true来设置多个远端仓库独立认证。

🏷️

标签

➡️

继续阅读