Use "SHA-1" instead of "SHA1" whenever we talk about the hash function. When used as a programming symbol, we keep "SHA1". Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
		
			
				
	
	
		
			85 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
git-replace(1)
 | 
						|
==============
 | 
						|
 | 
						|
NAME
 | 
						|
----
 | 
						|
git-replace - Create, list, delete refs to replace objects
 | 
						|
 | 
						|
SYNOPSIS
 | 
						|
--------
 | 
						|
[verse]
 | 
						|
'git replace' [-f] <object> <replacement>
 | 
						|
'git replace' -d <object>...
 | 
						|
'git replace' -l [<pattern>]
 | 
						|
 | 
						|
DESCRIPTION
 | 
						|
-----------
 | 
						|
Adds a 'replace' reference in `refs/replace/` namespace.
 | 
						|
 | 
						|
The name of the 'replace' reference is the SHA-1 of the object that is
 | 
						|
replaced. The content of the 'replace' reference is the SHA-1 of the
 | 
						|
replacement object.
 | 
						|
 | 
						|
Unless `-f` is given, the 'replace' reference must not yet exist.
 | 
						|
 | 
						|
Replacement references will be used by default by all Git commands
 | 
						|
except those doing reachability traversal (prune, pack transfer and
 | 
						|
fsck).
 | 
						|
 | 
						|
It is possible to disable use of replacement references for any
 | 
						|
command using the `--no-replace-objects` option just after 'git'.
 | 
						|
 | 
						|
For example if commit 'foo' has been replaced by commit 'bar':
 | 
						|
 | 
						|
------------------------------------------------
 | 
						|
$ git --no-replace-objects cat-file commit foo
 | 
						|
------------------------------------------------
 | 
						|
 | 
						|
shows information about commit 'foo', while:
 | 
						|
 | 
						|
------------------------------------------------
 | 
						|
$ git cat-file commit foo
 | 
						|
------------------------------------------------
 | 
						|
 | 
						|
shows information about commit 'bar'.
 | 
						|
 | 
						|
The 'GIT_NO_REPLACE_OBJECTS' environment variable can be set to
 | 
						|
achieve the same effect as the `--no-replace-objects` option.
 | 
						|
 | 
						|
OPTIONS
 | 
						|
-------
 | 
						|
-f::
 | 
						|
	If an existing replace ref for the same object exists, it will
 | 
						|
	be overwritten (instead of failing).
 | 
						|
 | 
						|
-d::
 | 
						|
	Delete existing replace refs for the given objects.
 | 
						|
 | 
						|
-l <pattern>::
 | 
						|
	List replace refs for objects that match the given pattern (or
 | 
						|
	all if no pattern is given).
 | 
						|
	Typing "git replace" without arguments, also lists all replace
 | 
						|
	refs.
 | 
						|
 | 
						|
BUGS
 | 
						|
----
 | 
						|
Comparing blobs or trees that have been replaced with those that
 | 
						|
replace them will not work properly. And using `git reset --hard` to
 | 
						|
go back to a replaced commit will move the branch to the replacement
 | 
						|
commit instead of the replaced commit.
 | 
						|
 | 
						|
There may be other problems when using 'git rev-list' related to
 | 
						|
pending objects. And of course things may break if an object of one
 | 
						|
type is replaced by an object of another type (for example a blob
 | 
						|
replaced by a commit).
 | 
						|
 | 
						|
SEE ALSO
 | 
						|
--------
 | 
						|
linkgit:git-tag[1]
 | 
						|
linkgit:git-branch[1]
 | 
						|
linkgit:git[1]
 | 
						|
 | 
						|
GIT
 | 
						|
---
 | 
						|
Part of the linkgit:git[1] suite
 |