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
13 association with a Git repository. Instead of storing the large files
14 within the Git repository as blobs, Git LFS stores special "pointer
15 files" in the repository, while storing the actual file contents on a
16 Git LFS server. The contents of the large file are downloaded
17 automatically when needed, for example when a Git branch containing the
18 large file is checked out.
19
20 Git LFS works by using a "smudge" filter to look up the large file
21 contents based on the pointer file, and a "clean" filter to create a
22 new version of the pointer file when the large file’s contents change.
23 It also uses a pre-push hook to upload the large file contents to the
24 Git 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 porcelain commands
32 git-lfs-checkout(1)
33 Populate working copy with real content from Git LFS files.
34
35 git-lfs-completion(1)
36 Generate shell scripts for command-line tab-completion of Git LFS
37 commands.
38
39 git-lfs-dedup(1)
40 De-duplicate Git LFS files.
41
42 git-lfs-env(1)
43 Display the Git LFS environment.
44
45 git-lfs-ext(1)
46 Display Git LFS extension details.
47
48 git-lfs-fetch(1)
49 Download Git LFS files from a remote.
50
51 git-lfs-fsck(1)
52 Check Git LFS files for consistency.
53
54 git-lfs-install(1)
55 Install Git LFS configuration.
56
57 git-lfs-lock(1)
58 Set a file as "locked" on the Git LFS server.
59
60 git-lfs-locks(1)
61 List currently "locked" files from the Git LFS server.
62
63 git-lfs-logs(1)
64 Show errors from the Git LFS command.
65
66 git-lfs-ls-files(1)
67 Show information about Git LFS files in the index and working tree.
68
69 git-lfs-migrate(1)
70 Migrate history to or from Git LFS
71
72 git-lfs-prune(1)
73 Delete old Git LFS files from local storage
74
75 git-lfs-pull(1)
76 Fetch Git LFS changes from the remote & checkout any required
77 working tree files.
78
79 git-lfs-push(1)
80 Push queued large files to the Git LFS endpoint.
81
82 git-lfs-status(1)
83 Show the status of Git LFS files in the working tree.
84
85 git-lfs-track(1)
86 View or add Git LFS paths to Git attributes.
87
88 git-lfs-uninstall(1)
89 Uninstall Git LFS by removing hooks and smudge/clean filter
90 configuration.
91
92 git-lfs-unlock(1)
93 Remove "locked" setting for a file on the Git LFS server.
94
95 git-lfs-untrack(1)
96 Remove Git LFS paths from Git Attributes.
97
98 git-lfs-update(1)
99 Update Git hooks for the current Git repository.
100
101 git-lfs-version(1)
102 Report the version number.
103
104 Low level plumbing commands
105 git-lfs-clean(1)
106 Git clean filter that converts large files to pointers.
107
108 git-lfs-filter-process(1)
109 Git process filter that converts between large files and pointers.
110
111 git-lfs-merge-driver(1)
112 Merge text-based LFS files
113
114 git-lfs-pointer(1)
115 Build and compare pointers.
116
117 git-lfs-post-checkout(1)
118 Git post-checkout hook implementation.
119
120 git-lfs-post-commit(1)
121 Git post-commit hook implementation.
122
123 git-lfs-post-merge(1)
124 Git post-merge hook implementation.
125
126 git-lfs-pre-push(1)
127 Git pre-push hook implementation.
128
129 git-lfs-smudge(1)
130 Git smudge filter that converts pointer in blobs to the actual
131 content.
132
133 git-lfs-standalone-file(1)
134 Git LFS standalone transfer adapter for file URLs (local paths).
135
137 To get started with Git LFS, the following commands can be used.
138
139 1. Setup Git LFS on your system. You only have to do this once per
140 user account:
141
142 git lfs install
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 git lfs track "*.iso"
148
149 3. The above stores this information in gitattributes(5) files, so
150 that file needs to be added to the repository:
151
152 git add .gitattributes
153
154 4. Commit, push and work with the files normally:
155
156 git add file.iso
157 git commit -m "Add disk image"
158 git push
159
160
161
162 GIT-LFS(1)