Git Liner🎯 为什么选择 Git Liner?如果你觉得 GitLens 太花哨、占用状态栏,或者你只是想要一个专注于历史追踪的轻量级工具,Git Liner 是你的理想选择:
✨ 功能特性🔍 精确的行级历史追踪
📁 完整的文件历史视图
⚡ 高性能分页加载
🗂️ 项目历史视图
🎯 直观的用户界面
🚀 快速开始安装方式方式一:插件市场(推荐)
方式二:离线安装
首次使用
📖 详细使用指南查看文件历史方法一:右键菜单
方法二:快捷键
方法三:命令面板
查看行历史方法一:选中行后右键
方法二:快捷键
查看提交差异
分页加载
⚙️ 配置选项Git Liner 提供了灵活的配置选项,可在 VSCode 设置中调整: 基本设置
配置说明
🔧 系统要求最低要求
推荐配置
Git 仓库要求
🌟 高级功能多根工作区支持Git Liner 完美支持 VSCode 的多根工作区功能:
嵌套 Git 仓库 / Submodule 兼容即使打开的是父目录而不是真正的仓库根,也能正常追踪历史:
文件重命名追踪使用 Git 的
智能缓存机制
🔍 故障排除常见问题1. 提示"不在 Git 仓库中"原因: 当前工作区不是 Git 仓库或 Git 未正确初始化 解决方案:
2. 显示"未找到历史记录"原因: 文件未提交到 Git 或文件路径有问题 解决方案:
3. 多根工作区中无法加载历史原因: 文件路径解析问题(v1.0.6 已修复) 解决方案:
4. 提示
|
| 功能 | Git Liner | GitLens | 原生 Git |
|---|---|---|---|
| 首次加载速度 | 1-2秒 | 5-10秒 | 命令行 |
| 内存占用 | 低 | 高 | 无 |
| 界面复杂度 | 极简 | 复杂 | 无界面 |
| 学习成本 | 零 | 中等 | 高 |
| 多根工作区 | ✅ | ✅ | ✅ |
| 分页加载 | ✅ | ❌ | ❌ |
🤝 贡献指南
我们欢迎社区贡献!请查看 CONTRIBUTING.md 了解详细信息。
开发环境设置
# 克隆仓库
git clone https://github.com/crazykun/git-liner.git
cd git-liner
# 安装依赖
npm install
# 启动开发模式
npm run watch
# 在 VSCode 中按 F5 启动调试
提交规范
我们使用 Conventional Commits 规范:
feat: 添加新功能
fix: 修复 bug
docs: 更新文档
style: 代码格式调整
refactor: 代码重构
test: 添加测试
chore: 构建过程或辅助工具的变动
📄 许可证
本项目采用 MIT License 许可证。
🙏 致谢
感谢以下项目和社区的启发:
- GitLens - Git 增强功能的先驱
- Git History - Git 历史查看的灵感来源
- VSCode 团队 - 提供了优秀的扩展 API
📞 联系我们
- GitHub: crazykun/git-liner
- Issues: 报告问题
- Discussions: 功能讨论
如果 Git Liner 对你有帮助,请给我们一个 ⭐ Star!
让更多开发者发现这个简洁高效的 Git 历史工具。
📦 开发者指南
快速开始
# 初始化开发环境(安装依赖、编译代码)
./start.sh setup
# 打包插件
./start.sh package
# 安装到本地VSCode测试
./start.sh install
# 发布到VSCode Marketplace
export VSCE_PAT="your-vscode-token"
./start.sh publish-vsc
# 发布到Open VSX Registry
export OVSX_PAT="your-ovsx-token"
./start.sh publish
# 发布到所有平台
./start.sh publish-all
开发工具脚本
我们提供了统一的开发工具脚本 start.sh,整合了所有开发、打包、安装和发布功能:
| 命令 | 功能 | 说明 |
|---|---|---|
./start.sh setup |
开发环境初始化 | 安装依赖、编译代码 |
./start.sh package |
打包插件 | 生成.vsix文件 |
./start.sh install |
安装插件 | 安装到本地VSCode |
./start.sh publish |
发布到Open VSX | 发布到Open VSX Registry |
./start.sh publish-vsc |
发布到VSCode | 发布到VSCode Marketplace |
./start.sh publish-all |
发布到所有平台 | 同时发布到两个平台 |
./start.sh clean |
清理文件 | 清理构建文件和缓存 |
./start.sh help |
帮助信息 | 显示所有可用命令 |
传统方式(仍然支持)
# 1. 编译代码
npm run compile
# 2. 本地打包(生成 .vsix 文件)
vsce package
# 3. 发布到VSCode插件市场
vsce publish
# 4. 发布到Open VSX Registry
ovsx publish git-liner-x.x.x.vsix
版本管理
# 更新版本号(自动更新package.json)
npm version patch # 1.0.6 -> 1.0.7
npm version minor # 1.0.6 -> 1.1.0
npm version major # 1.0.6 -> 2.0.0
# 手动更新版本号
# 编辑 package.json 中的 "version" 字段
项目结构
git-liner/
├── src/ # 源代码目录
│ ├── extension.ts # 插件入口文件
│ ├── gitHistoryProvider.ts # Git 历史数据提供者
│ ├── historyTreeProvider.ts # 历史树视图提供者
│ ├── commands.ts # 命令处理
│ ├── i18n.ts # 国际化支持
│ └── test/ # 测试文件
├── out/ # 编译输出目录
├── scripts/ # 构建脚本
├── package.json # 项目配置
├── tsconfig.json # TypeScript 配置
└── README.md # 项目文档
许可证
MIT License