|
<!DOCTYPE html> |
|
<html> |
|
<head> |
|
<meta http-equiv='content-type' value='text/html;charset=utf8'> |
|
<meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'> |
|
<title>git-lfs-fetch(1) - Download all Git LFS files for a given ref</title> |
|
<style type='text/css' media='all'> |
|
|
|
body#manpage {margin:0} |
|
.mp {max-width:100ex;padding:0 9ex 1ex 4ex} |
|
.mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0} |
|
.mp h2 {margin:10px 0 0 0} |
|
.mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex} |
|
.mp h3 {margin:0 0 0 4ex} |
|
.mp dt {margin:0;clear:left} |
|
.mp dt.flush {float:left;width:8ex} |
|
.mp dd {margin:0 0 0 9ex} |
|
.mp h1,.mp h2,.mp h3,.mp h4 {clear:left} |
|
.mp pre {margin-bottom:20px} |
|
.mp pre+h2,.mp pre+h3 {margin-top:22px} |
|
.mp h2+pre,.mp h3+pre {margin-top:5px} |
|
.mp img {display:block;margin:auto} |
|
.mp h1.man-title {display:none} |
|
.mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143} |
|
.mp h2 {font-size:16px;line-height:1.25} |
|
.mp h1 {font-size:20px;line-height:2} |
|
.mp {text-align:justify;background:#fff} |
|
.mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211} |
|
.mp h1,.mp h2,.mp h3,.mp h4 {color:#030201} |
|
.mp u {text-decoration:underline} |
|
.mp code,.mp strong,.mp b {font-weight:bold;color:#131211} |
|
.mp em,.mp var {font-style:italic;color:#232221;text-decoration:none} |
|
.mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff} |
|
.mp b.man-ref {font-weight:normal;color:#434241} |
|
.mp pre {padding:0 4ex} |
|
.mp pre code {font-weight:normal;color:#434241} |
|
.mp h2+pre,h3+pre {padding-left:0} |
|
ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px} |
|
ol.man-decor {width:100%} |
|
ol.man-decor li.tl {text-align:left} |
|
ol.man-decor li.tc {text-align:center;letter-spacing:4px} |
|
ol.man-decor li.tr {text-align:right;float:right} |
|
</style> |
|
</head> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<body id='manpage'> |
|
<div class='mp' id='man'> |
|
|
|
<div class='man-navigation' style='display:none'> |
|
<a href="#NAME">NAME</a> |
|
<a href="#SYNOPSIS">SYNOPSIS</a> |
|
<a href="#DESCRIPTION">DESCRIPTION</a> |
|
<a href="#OPTIONS">OPTIONS</a> |
|
<a href="#INCLUDE-AND-EXCLUDE">INCLUDE AND EXCLUDE</a> |
|
<a href="#DEFAULT-REMOTE">DEFAULT REMOTE</a> |
|
<a href="#DEFAULT-REFS">DEFAULT REFS</a> |
|
<a href="#RECENT-CHANGES">RECENT CHANGES</a> |
|
<a href="#EXAMPLES">EXAMPLES</a> |
|
<a href="#SEE-ALSO">SEE ALSO</a> |
|
</div> |
|
|
|
<ol class='man-decor man-head man head'> |
|
<li class='tl'>git-lfs-fetch(1)</li> |
|
<li class='tc'></li> |
|
<li class='tr'>git-lfs-fetch(1)</li> |
|
</ol> |
|
|
|
<h2 id="NAME">NAME</h2> |
|
<p class="man-name"> |
|
<code>git-lfs-fetch</code> - <span class="man-whatis">Download all Git LFS files for a given ref</span> |
|
</p> |
|
|
|
<h2 id="SYNOPSIS">SYNOPSIS</h2> |
|
|
|
<p><code>git lfs fetch</code> [options] [<var>remote</var> [<var>ref</var>...]]</p> |
|
|
|
<h2 id="DESCRIPTION">DESCRIPTION</h2> |
|
|
|
<p>Download Git LFS objects at the given refs from the specified remote. See |
|
<a href="#DEFAULT-REMOTE" title="DEFAULT REMOTE" data-bare-link="true">DEFAULT REMOTE</a> and <a href="#DEFAULT-REFS" title="DEFAULT REFS" data-bare-link="true">DEFAULT REFS</a> for what happens if you don't specify.</p> |
|
|
|
<p>This does not update the working copy.</p> |
|
|
|
<h2 id="OPTIONS">OPTIONS</h2> |
|
|
|
<dl> |
|
<dt><code>-I</code> <var>paths</var> <code>--include=</code><var>paths</var></dt><dd><p>Specify lfs.fetchinclude just for this invocation; see <a href="#INCLUDE-AND-EXCLUDE" title="INCLUDE AND EXCLUDE" data-bare-link="true">INCLUDE AND EXCLUDE</a></p></dd> |
|
<dt><code>-X</code> <var>paths</var> <code>--exclude=</code><var>paths</var></dt><dd><p>Specify lfs.fetchexclude just for this invocation; see <a href="#INCLUDE-AND-EXCLUDE" title="INCLUDE AND EXCLUDE" data-bare-link="true">INCLUDE AND EXCLUDE</a></p></dd> |
|
<dt><code>--recent</code></dt><dd><p>Download objects referenced by recent branches & commits in addition to those |
|
that would otherwise be downloaded. See <a href="#RECENT-CHANGES" title="RECENT CHANGES" data-bare-link="true">RECENT CHANGES</a></p></dd> |
|
<dt class="flush"><code>--all</code></dt><dd><p>Download all objects that are referenced by any commit reachable from the refs |
|
provided as arguments. If no refs are provided, then all refs are fetched. |
|
This is primarily for backup and migration purposes. Cannot be combined with |
|
--recent or --include/--exclude. Ignores any globally configured include and |
|
exclude paths to ensure that all objects are downloaded.</p></dd> |
|
<dt><code>--prune</code> <code>-p</code></dt><dd><p>Prune old and unreferenced objects after fetching, equivalent to running |
|
<code>git lfs prune</code> afterwards. See <span class="man-ref">git-lfs-prune<span class="s">(1)</span></span> for more details.</p></dd> |
|
</dl> |
|
|
|
|
|
<h2 id="INCLUDE-AND-EXCLUDE">INCLUDE AND EXCLUDE</h2> |
|
|
|
<p>You can configure Git LFS to only fetch objects to satisfy references in certain |
|
paths of the repo, and/or to exclude certain paths of the repo, to reduce the |
|
time you spend downloading things you do not use.</p> |
|
|
|
<p>In gitconfig, set <code>lfs.fetchinclude</code> and <code>lfs.fetchexclude</code> to comma-separated |
|
lists of paths to include/exclude in the fetch. Only paths which are matched by |
|
<code>fetchinclude</code> and not matched by <code>fetchexclude</code> will have objects fetched for |
|
them.</p> |
|
|
|
<p>Note that using the command-line options <code>-I</code> and <code>-X</code> override the respective |
|
configuration settings. Setting either option to an empty string clears the |
|
value.</p> |
|
|
|
<h3 id="Examples-">Examples:</h3> |
|
|
|
<ul> |
|
<li><p><code>git config lfs.fetchinclude "textures,images/foo*"</code></p> |
|
|
|
<p>This will only fetch objects referenced in paths in the textures folder, and |
|
files called foo* in the images folder</p></li> |
|
<li><p><code>git config lfs.fetchinclude "*.jpg,*.png,*.tga"</code></p> |
|
|
|
<p>Only fetch JPG/PNG/TGA files, wherever they are in the repository</p></li> |
|
<li><p><code>git config lfs.fetchexclude "media/reallybigfiles"</code></p> |
|
|
|
<p>Don't fetch any LFS objects referenced in the folder media/reallybigfiles, but |
|
fetch everything else</p></li> |
|
<li><p><code>git config lfs.fetchinclude "media"</code><br /> |
|
<code>git config lfs.fetchexclude "media/excessive"</code></p> |
|
|
|
<p>Only fetch LFS objects in the 'media' folder, but exclude those in one of its |
|
subfolders.</p></li> |
|
</ul> |
|
|
|
|
|
<h2 id="DEFAULT-REMOTE">DEFAULT REMOTE</h2> |
|
|
|
<p>Without arguments, fetch downloads from the default remote. The default remote |
|
is the same as for <code>git fetch</code>, i.e. based on the remote branch you're tracking |
|
first, or origin otherwise.</p> |
|
|
|
<h2 id="DEFAULT-REFS">DEFAULT REFS</h2> |
|
|
|
<p>If no refs are given as arguments, the currently checked out ref is used. In |
|
addition, if enabled, recently changed refs and commits are also |
|
included. See <a href="#RECENT-CHANGES" title="RECENT CHANGES" data-bare-link="true">RECENT CHANGES</a> for details.</p> |
|
|
|
<h2 id="RECENT-CHANGES">RECENT CHANGES</h2> |
|
|
|
<p>If the <code>--recent</code> option is specified, or if the gitconfig option |
|
<code>lfs.fetchrecentalways</code> is true, then after the current ref (or those in the |
|
arguments) is fetched, we also search for 'recent' changes to fetch |
|
objects for, so that it's more convenient to checkout or diff those commits |
|
without incurring further downloads.</p> |
|
|
|
<p>What changes are considered 'recent' is based on a number of gitconfig options:</p> |
|
|
|
<ul> |
|
<li><p><code>lfs.fetchrecentrefsdays</code> |
|
If non-zero, includes branches which have commits within N days of the current |
|
date. Only local refs are included unless lfs.fetchrecentremoterefs is true. |
|
The default is 7 days.</p></li> |
|
<li><p><code>lfs.fetchrecentremoterefs</code> |
|
If true, fetches remote refs (for the remote you're fetching) as well as local |
|
refs in the recent window. This is useful to fetch objects for remote branches |
|
you might want to check out later. The default is true; if you set this to |
|
false, fetching for those branches will only occur when you either check them |
|
out (losing the advantage of fetch --recent), or create a tracking local |
|
branch separately then fetch again.</p></li> |
|
<li><p><code>lfs.fetchrecentcommitsdays</code> |
|
In addition to fetching at branches, also fetches changes made within N |
|
days of the latest commit on the branch. This is useful if you're often |
|
reviewing recent changes. The default is 0 (no previous changes).</p></li> |
|
<li><p><code>lfs.fetchrecentalways</code> |
|
Always operate as if --recent was provided on the command line.</p></li> |
|
</ul> |
|
|
|
|
|
<h2 id="EXAMPLES">EXAMPLES</h2> |
|
|
|
<ul> |
|
<li><p>Fetch the LFS objects for the current ref from default remote</p> |
|
|
|
<p><code>git lfs fetch</code></p></li> |
|
<li><p>Fetch the LFS objects for the current ref AND recent changes from default |
|
remote</p> |
|
|
|
<p><code>git lfs fetch --recent</code></p></li> |
|
<li><p>Fetch the LFS objects for the current ref from a secondary remote 'upstream'</p> |
|
|
|
<p><code>git lfs fetch upstream</code></p></li> |
|
<li><p>Fetch all the LFS objects from the default remote that are referenced by any |
|
commit in the <code>main</code> and <code>develop</code> branches</p> |
|
|
|
<p><code>git lfs fetch --all origin main develop</code></p></li> |
|
<li><p>Fetch the LFS objects for a branch from origin</p> |
|
|
|
<p><code>git lfs fetch origin mybranch</code></p></li> |
|
<li><p>Fetch the LFS objects for 2 branches and a commit from origin</p> |
|
|
|
<p><code>git lfs fetch origin main mybranch e445b45c1c9c6282614f201b62778e4c0688b5c8</code></p></li> |
|
</ul> |
|
|
|
|
|
<h2 id="SEE-ALSO">SEE ALSO</h2> |
|
|
|
<p><span class="man-ref">git-lfs-checkout<span class="s">(1)</span></span>, <span class="man-ref">git-lfs-pull<span class="s">(1)</span></span>, <span class="man-ref">git-lfs-prune<span class="s">(1)</span></span>.</p> |
|
|
|
<p>Part of the <span class="man-ref">git-lfs<span class="s">(1)</span></span> suite.</p> |
|
|
|
|
|
<ol class='man-decor man-foot man foot'> |
|
<li class='tl'></li> |
|
<li class='tc'>October 2021</li> |
|
<li class='tr'>git-lfs-fetch(1)</li> |
|
</ol> |
|
|
|
</div> |
|
</body> |
|
</html> |
|
|