1GIT-LFS(1)                  General Commands Manual                 GIT-LFS(1)
2
3
4

NAME

6       git-lfs - Work with large files in Git repositories
7

SYNOPSIS

9       git lfs command [args]
10

DESCRIPTION

12       Git LFS is a system for managing and versioning large files in associa‐
13       tion with a Git repository. Instead of storing the large  files  within
14       the  Git repository as blobs, Git LFS stores special "pointer files" in
15       the repository, while storing the actual file contents  on  a  Git  LFS
16       server.  The  contents  of  the large file are downloaded automatically
17       when needed, for example when a Git branch containing the large file is
18       checked out.
19
20       Git LFS works by using a "smudge" filter to look up the large file con‐
21       tents based on the pointer file, and a "clean" filter to create  a  new
22       version  of  the pointer file when the large file´s contents change. It
23       also uses a pre-push hook to upload the large file contents to the  Git
24       LFS  server  whenever  a  commit containing a new large file version is
25       about to be pushed to the corresponding Git server.
26

COMMANDS

28       Like Git, Git LFS commands are separated into high level  ("porcelain")
29       commands and low level ("plumbing") commands.
30
31   High level porcelain commands
32       git-lfs-checkout(1)
33              Populate working copy with real content from Git LFS files.
34
35       git-lfs-dedup(1)
36              De-duplicate Git LFS files.
37
38       git-lfs-env(1)
39              Display the Git LFS environment.
40
41       git-lfs-ext(1)
42              Display Git LFS extension details.
43
44       git-lfs-fetch(1)
45              Download Git LFS files from a remote.
46
47       git-lfs-fsck(1)
48              Check Git LFS files for consistency.
49
50       git-lfs-install(1)
51              Install Git LFS configuration.
52
53       git-lfs-lock(1)
54              Set a file as "locked" on the Git LFS server.
55
56       git-lfs-locks(1)
57              List currently "locked" files from the Git LFS server.
58
59       git-lfs-logs(1)
60              Show errors from the Git LFS command.
61
62       git-lfs-ls-files(1)
63              Show  information  about  Git LFS files in the index and working
64              tree.
65
66       git-lfs-migrate(1)
67              Migrate history to or from Git LFS
68
69       git-lfs-prune(1)
70              Delete old Git LFS files from local storage
71
72       git-lfs-pull(1)
73              Fetch Git LFS changes from the remote &  checkout  any  required
74              working tree files.
75
76       git-lfs-push(1)
77              Push queued large files to the Git LFS endpoint.
78
79       git-lfs-status(1)
80              Show the status of Git LFS files in the working tree.
81
82       git-lfs-track(1)
83              View or add Git LFS paths to Git attributes.
84
85       git-lfs-uninstall(1)
86              Uninstall Git LFS by removing hooks and smudge/clean filter con‐
87              figuration.
88
89       git-lfs-unlock(1)
90              Remove "locked" setting for a file on the Git LFS server.
91
92       git-lfs-untrack(1)
93              Remove Git LFS paths from Git Attributes.
94
95       git-lfs-update(1)
96              Update Git hooks for the current Git repository.
97
98       git-lfs-version(1)
99              Report the version number.
100
101   Low level plumbing commands
102       git-lfs-clean(1)
103              Git clean filter that converts large files to pointers.
104
105       git-lfs-filter-process(1)
106              Git process filter that converts between large files and  point‐
107              ers.
108
109       git-lfs-pointer(1)
110              Build and compare pointers.
111
112       git-lfs-post-checkout(1)
113              Git post-checkout hook implementation.
114
115       git-lfs-post-commit(1)
116              Git post-commit hook implementation.
117
118       git-lfs-post-merge(1)
119              Git post-merge hook implementation.
120
121       git-lfs-pre-push(1)
122              Git pre-push hook implementation.
123
124       git-lfs-smudge(1)
125              Git  smudge  filter that converts pointer in blobs to the actual
126              content.
127
128       git-lfs-standalone-file(1)
129              Git LFS standalone transfer adapter for file URLs (local paths).
130

EXAMPLES

132       To get started with Git LFS, the following commands can be used.
133
134       1.  Setup Git LFS on your system. You only have to  do  this  once  per
135           repository per machine:
136
137
138           git lfs install
139
140
141
142
143       2.  Choose  the  type  of files you want to track, for examples all ISO
144           images, with git-lfs-track(1):
145
146
147           git lfs track "*.iso"
148
149
150
151
152       3.  The above stores this information  in  gitattributes(5)  files,  so
153           that file need to be added to the repository:
154
155
156           git add .gitattributes
157
158
159
160
161       4.  Commit, push and work with the files normally:
162
163
164           git add file.iso
165           git commit -m "Add disk image"
166           git push
167
168
169
170
171
172
173
174
175
176                                 February 2022                      GIT-LFS(1)
Impressum