1GIT-LFS(1) GIT-LFS(1)
2
3
4
6 git-lfs - Work with large files in Git repositories
7
9 git lfs command [args]
10
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
28 Like Git, Git LFS commands are separated into high level ("porcelain")
29 commands and low level ("plumbing") commands.
30
31 High level commands (porcelain)
32 git-lfs-env(1)
33 Display the Git LFS environment.
34
35 git-lfs-checkout(1)
36 Populate working copy with real content from Git LFS files.
37
38 git-lfs-dedup(1)
39 De-duplicate Git LFS files.
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 commands (plumbing)
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
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
139 git lfs install
140
141
142
143
144 2. Choose the type of files you want to track, for examples all ISO
145 images, with git-lfs-track(1):
146
147
148
149 git lfs track "*.iso"
150
151
152
153
154 3. The above stores this information in gitattributes(5) files, so
155 that file need to be added to the repository:
156
157
158
159 git add .gitattributes
160
161
162
163
164 4. Commit, push and work with the files normally:
165
166
167
168 git add file.iso
169 git commit -m "Add disk image"
170 git push
171
172
173
174
175
176
177
178
179
180 March 2021 GIT-LFS(1)