Merge branch 'jc/maint-rev-list-culled-boundary'
[git/mjg.git] / Documentation / git-lost-found.txt
blobadf7e1c0557b3dab145403d73687f5e125ae73f4
1 git-lost-found(1)
2 =================
4 NAME
5 ----
6 git-lost-found - Recover lost refs that luckily have not yet been pruned
8 SYNOPSIS
9 --------
10 'git lost-found'
12 DESCRIPTION
13 -----------
15 *NOTE*: this command is deprecated.  Use linkgit:git-fsck[1] with
16 the option '--lost-found' instead.
18 Finds dangling commits and tags from the object database, and
19 creates refs to them in the .git/lost-found/ directory.  Commits and
20 tags that dereference to commits are stored in .git/lost-found/commit,
21 and other objects are stored in .git/lost-found/other.
24 OUTPUT
25 ------
26 Prints to standard output the object names and one-line descriptions
27 of any commits or tags found.
29 EXAMPLE
30 -------
32 Suppose you run 'git tag -f' and mistype the tag to overwrite.
33 The ref to your tag is overwritten, but until you run 'git
34 prune', the tag itself is still there.
36 ------------
37 $ git lost-found
38 [1ef2b196d909eed523d4f3c9bf54b78cdd6843c6] GIT 0.99.9c
39 ...
40 ------------
42 Also you can use gitk to browse how any tags found relate to each
43 other.
45 ------------
46 $ gitk $(cd .git/lost-found/commit && echo ??*)
47 ------------
49 After making sure you know which the object is the tag you are looking
50 for, you can reconnect it to your regular .git/refs hierarchy.
52 ------------
53 $ git cat-file -t 1ef2b196
54 tag
55 $ git cat-file tag 1ef2b196
56 object fa41bbce8e38c67a218415de6cfa510c7e50032a
57 type commit
58 tag v0.99.9c
59 tagger Junio C Hamano <junkio@cox.net> 1131059594 -0800
61 GIT 0.99.9c
63 This contains the following changes from the "master" branch, since
64 ...
65 $ git update-ref refs/tags/not-lost-anymore 1ef2b196
66 $ git rev-parse not-lost-anymore
67 1ef2b196d909eed523d4f3c9bf54b78cdd6843c6
68 ------------
70 GIT
71 ---
72 Part of the linkgit:git[1] suite