非root用户安装git lfs(git大文件)命令记录

背景

最近在看LLAMA2的模型,想直接从Huggingface下载模型到本地,但是却发现服务器上没有安装git lfs命令。查询了一些资料完成了非root用户安装git lfs命令的操作,特此记录。

Git LFS下载与解压

下载 Git LFS 二进制文件

  1. 访问 Git LFS 发布页面 :首先,访问 Git LFS 的官方 GitHub 仓库的 Releases 页面,找到适合你操作系统的版本。

  2. 下载二进制文件 :选择对应的版本,下载 .tar.gz 文件。例如,我使用的是 Linux,所下载的为 git-lfs-linux-amd64-v2.x.y.tar.gz 的文件。

解压 Git LFS

下载文件后,可以使用命令行工具 tar 来解压:

bash 复制代码
tar -xzf git-lfs-linux-amd64-v2.x.y.tar.gz

安装

完成下载和解压后就可以进行安装了。

root权限用户安装

有root权限则可以直接运行安装脚本,即在当前目录中运行该脚本来安装 Git LFS。

bash 复制代码
./install.sh

非root权限用户安装

如果没有权限运行 install.sh,则需要手动将install.sh文件中的prefix目录进行修改,更改为本用户的目录。例如,原来的install.sh文件内容如下:

bash 复制代码
#!/usr/bin/env bash
set -eu

prefix="/usr/local"

if [ "${PREFIX:-}" != "" ] ; then
  prefix=${PREFIX:-}
elif [ "${BOXEN_HOME:-}" != "" ] ; then
  prefix=${BOXEN_HOME:-}
fi

mkdir -p $prefix/bin
rm -rf $prefix/bin/git-lfs*

pushd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null
  for g in git*; do
    install $g "$prefix/bin/$g"
  done
popd > /dev/null

PATH+=:$prefix/bin
git lfs install

这里,我将prefix进行修改:

bash 复制代码
#!/usr/bin/env bash
set -eu

prefix="/home/jxqi"

if [ "${PREFIX:-}" != "" ] ; then
  prefix=${PREFIX:-}
elif [ "${BOXEN_HOME:-}" != "" ] ; then
  prefix=${BOXEN_HOME:-}
fi

mkdir -p $prefix/bin
rm -rf $prefix/bin/git-lfs*

pushd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null
  for g in git*; do
    install $g "$prefix/bin/$g"
  done
popd > /dev/null

PATH+=:$prefix/bin
git lfs install

这个脚本会自动在prefix目录下创建一个bin目录,然后将git lfs安装到这个目录中。

配置 Git LFS

完成安装后,我们还需要手动配置这个命令的Path,需要我们在 ~/.bashrc 文件中添加如下行:

bash 复制代码
 export PATH="$HOME/bin:$PATH"

最后,可以运行 Git LFS 初始化,验证是否安装成功

bash 复制代码
git lfs install

如得到"Git LFS initialized."输出即完成安装。

相关推荐
老马啸西风10 小时前
v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试
性能优化·开源·nlp·github·敏感词
伴杯猫13 小时前
【ESP32-IDF】基础外设开发2:系统中断矩阵
c语言·单片机·嵌入式硬件·mcu·物联网·github
Echoo华地14 小时前
GitLab升级后仓库镜像信任证书导入问题
证书·gitlab·trust store·certificate·信任库·仓库镜像
程序视点15 小时前
GitHub Copilot代码审查大升级!路径级指令+组织级规范,开发者效率再提升!
github·github copilot
ficker1316 小时前
git常用命令
git
行思理20 小时前
linux 安全与防护,全方向讲解
linux·安全·github
NocoBase20 小时前
6 个最佳无代码 IT 资产管理工具推荐
低代码·开源·github
一念一花一世界20 小时前
DevOps实战(4) - 使用Arbess+GitLab+SourceFare实现Java项目自动化部署
gitlab·tiklab·arbess·开源cicd工具·sourcefare
kevin_cat21 小时前
微信群机器人-备份文件发送通知
git·bash·企业微信
uhakadotcom21 小时前
DuckDB相比于ClickHouse有什么不同点和优势?
后端·面试·github