zoukankan      html  css  js  c++  java
  • 【git学习】git lfs实现大文件传输

    git-lfs/2.8.0 (GitHub; linux amd64; go 1.12.7; git 30af66bb)
    git lfs []

    Git LFS is a system for managing and versioning large files in
    association with a Git repository. Instead of storing the large files
    within the Git repository as blobs, Git LFS stores special "pointer
    files" in the repository, while storing the actual file contents on a
    Git LFS server. The contents of the large file are downloaded
    automatically when needed, for example when a Git branch containing
    the large file is checked out.

    Git LFS works by using a "smudge" filter to look up the large file
    contents based on the pointer file, and a "clean" filter to create a
    new version of the pointer file when the large file's contents change.
    It also uses a pre-push hook to upload the large file contents to
    the Git LFS server whenever a commit containing a new large file
    version is about to be pushed to the corresponding Git server.

    Commands

    Like Git, Git LFS commands are separated into high level ("porcelain")
    commands and low level ("plumbing") commands.

    High level commands

    • git lfs env:
      Display the Git LFS environment.
    • git lfs checkout:
      Populate working copy with real content from Git LFS files.
    • git lfs fetch:
      Download Git LFS files from a remote.
    • git lfs fsck:
      Check Git LFS files for consistency.
    • git lfs install:
      Install Git LFS configuration.
    • git lfs lock:
      Set a file as "locked" on the Git LFS server.
    • git lfs locks:
      List currently "locked" files from the Git LFS server.
    • git lfs logs:
      Show errors from the Git LFS command.
    • git lfs ls-files:
      Show information about Git LFS files in the index and working tree.
    • git lfs migrate:
      Migrate history to or from Git LFS
    • git lfs prune:
      Delete old Git LFS files from local storage
    • git lfs pull:
      Fetch Git LFS changes from the remote & checkout any required working tree
      files.
    • git lfs push:
      Push queued large files to the Git LFS endpoint.
    • git lfs status:
      Show the status of Git LFS files in the working tree.
    • git lfs track:
      View or add Git LFS paths to Git attributes.
    • git lfs uninstall:
      Uninstall Git LFS by removing hooks and smudge/clean filter configuration.
    • git lfs unlock:
      Remove "locked" setting for a file on the Git LFS server.
    • git lfs untrack:
      Remove Git LFS paths from Git Attributes.
    • git lfs update:
      Update Git hooks for the current Git repository.
    • git lfs version:
      Report the version number.

    Low level commands

    • git lfs clean:
      Git clean filter that converts large files to pointers.
    • git lfs pointer:
      Build and compare pointers.
    • git lfs pre-push:
      Git pre-push hook implementation.
    • git lfs filter-process:
      Git process filter that converts between large files and pointers.
    • git lfs smudge:
      Git smudge filter that converts pointer in blobs to the actual content.

    Examples

    To get started with Git LFS, the following commands can be used.

    1. Setup Git LFS on your system. You only have to do this once per
      repository per machine:

      git lfs install
      
    2. Choose the type of files you want to track, for examples all ISO
      images, with git lfs track:

      git lfs track "*.iso"
      
    3. The above stores this information in gitattributes(5) files, so
      that file need to be added to the repository:

      git add .gitattributes
      
    4. Commit, push and work with the files normally:

      git add file.iso
      git commit -m "Add disk image"
      git push
  • 相关阅读:
    设置内存管理
    Kill Session
    设置In_Memery
    查询无效对象 及 重新编译
    Oracle 硬解析查询
    设置Oracle 12C OEM 端口
    创建Mysql 序列
    compress 表设置及索引设置
    闪回表
    ECS Samples概述
  • 原文地址:https://www.cnblogs.com/Ryan0v0/p/13198819.html
Copyright © 2011-2022 走看看