'\" t .\" Title: git-lost-found .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.76.1 .\" Date: 03/19/2016 .\" Manual: Git Manual .\" Source: Git 1.7.10.4 .\" Language: English .\" .TH "GIT\-LOST\-FOUND" "1" "03/19/2016" "Git 1\&.7\&.10\&.4" "Git Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" git-lost-found \- Recover lost refs that luckily have not yet been pruned .SH "SYNOPSIS" .sp .nf \fIgit lost\-found\fR .fi .sp .SH "DESCRIPTION" .sp \fBNOTE\fR: this command is deprecated\&. Use \fBgit-fsck\fR(1) with the option \fI\-\-lost\-found\fR instead\&. .sp Finds dangling commits and tags from the object database, and creates refs to them in the \&.git/lost\-found/ directory\&. Commits and tags that dereference to commits are stored in \&.git/lost\-found/commit, and other objects are stored in \&.git/lost\-found/other\&. .SH "OUTPUT" .sp Prints to standard output the object names and one\-line descriptions of any commits or tags found\&. .SH "EXAMPLE" .sp Suppose you run \fIgit tag \-f\fR and mistype the tag to overwrite\&. The ref to your tag is overwritten, but until you run \fIgit prune\fR, the tag itself is still there\&. .sp .if n \{\ .RS 4 .\} .nf $ git lost\-found [1ef2b196d909eed523d4f3c9bf54b78cdd6843c6] GIT 0\&.99\&.9c \&.\&.\&. .fi .if n \{\ .RE .\} .sp .sp Also you can use gitk to browse how any tags found relate to each other\&. .sp .if n \{\ .RS 4 .\} .nf $ gitk $(cd \&.git/lost\-found/commit && echo ??*) .fi .if n \{\ .RE .\} .sp .sp After making sure you know which the object is the tag you are looking for, you can reconnect it to your regular \&.git/refs hierarchy\&. .sp .if n \{\ .RS 4 .\} .nf $ git cat\-file \-t 1ef2b196 tag $ git cat\-file tag 1ef2b196 object fa41bbce8e38c67a218415de6cfa510c7e50032a type commit tag v0\&.99\&.9c tagger Junio C Hamano 1131059594 \-0800 GIT 0\&.99\&.9c This contains the following changes from the "master" branch, since \&.\&.\&. $ git update\-ref refs/tags/not\-lost\-anymore 1ef2b196 $ git rev\-parse not\-lost\-anymore 1ef2b196d909eed523d4f3c9bf54b78cdd6843c6 .fi .if n \{\ .RE .\} .sp .SH "GIT" .sp Part of the \fBgit\fR(1) suite