Git 大文件存储
Linux | macOS | Windows |
---|---|---|
|
Git LFS 是一个用于管理 Git 中大文件的命令行扩展和规范。
客户端是用 Go 编写的,并可从 Mac、Windows、Linux 和 FreeBSD 的预编译二进制文件中获取。访问 网站 了解功能概述。
入门
安装
您可以根据您的设置和偏好通过几种不同的方式安装 Git LFS 客户端。
- Linux 用户。您可以从PackageCloud获取 Debian 和 RPM 包。
- macOS 用户。通过 Homebrew 分发并可以通过
brew install git-lfs
安装。 - Windows 用户。Git LFS 包含在Git for Windows的发行版中。或者,您也可以通过 Chocolatey 软件包管理器安装最新的 Git LFS 版本。
此外,Linux、macOS、Windows 和 FreeBSD 可通过二进制软件包进行安装。此仓库还可以使用最新的Go版本和我们的Wiki中的可用的说明从源进行构建。
使用方法
Git LFS 需要在每台机器上全局安装一次。这可以通过运行以下命令来完成:
$ git lfs install
要开始在您的 Git 仓库中使用 Git LFS,您可以指明您希望 Git LFS 管理哪些文件。这可以通过在 Git 仓库中运行以下命令来操作:
$ git lfs track "*.psd"
(这里的 *.psd
是您希望跟踪的文件名的模式。您可以在此处了解更多有关该模式语法的更多信息[链接])。
在任何对 git-lfs-track(1)
或 git-lfs-untrack(1)
的调用之后,您必须提交对您的 .gitattributes
文件的更改。这可以通过以下命令来完成:
$ git add .gitattributes
$ git commit -m "track *.psd files using Git LFS"
现在您可以像往常一样与您的 Git 仓库交互,Git LFS 将负责管理您的大型文件。例如,更改由 my.psd
(通过 *.psd
跟踪) 跟踪的文件。
$ git add my.psd
$ git commit -m "add psd"
提示:如果您的仓库历史中已经存在大文件,
git lfs track
将不会回溯性地跟踪它们。要将历史中的现有大文件迁移到使用 Git LFS,请使用git lfs migrate
。例如$ git lfs migrate import --include="*.psd"
有关更多信息,请阅读
git-lfs-migrate(1)
。
您可以使用以下方法确认 Git LFS 是否正在管理您的 PSD 文件。
$ git lfs ls-files
3c2f7aedfb * my.psd
提交所有更改后,将文件推送到 Git 远程仓库。
$ git push origin master
Uploading LFS objects: 100% (1/1), 810 B, 1.2 KB/s
# ...
To https://github.com/git-lfs/git-lfs-test
67fcf6a..47b2002 master -> master
注意:Git LFS 需要 Git v1.8.5 或更高版本。
限制
Git LFS 维护一份当前已知的限制列表,您可以通过以下链接找到它并进行编辑[链接]。
需要帮助?
您可以直接获取有关特定命令的帮助。
$ git lfs help <subcommand>
官方文档提供了工具的命令参考和规范[链接]。
您始终可以[打开一个问题],我们的核心团队成员之一将回应您。请确保包括以下内容:
git lfs env
的输出,它显示了有关您的 Git 仓库的有用信息,这些信息对于调试很有帮助。- 使用环境中的
GIT_TRACE=1
重新运行任何失败的命令,这将显示有关命令为何崩溃的更多信息。
贡献
请参阅 CONTRIBUTING.md 了解有关在 Git LFS 上工作以及发送补丁的信息。相关项目列在 实现wiki页面 上。
核心团队
这些人组成了 Git LFS 的核心团队,负责运营该项目。
按字母顺序排列
@larsxschneider | @ttaylorr |
---|---|
校友
这些人曾经是 Git LFS 的核心团队成员,或者在其他方面为该项目做出了重大贡献。没有他们,Git LFS 可能是无法实现的。
按字母顺序排列
@andyneff | @rubyist | @sinbad | @technoweenie |
---|---|---|---|