1
0
mirror of git://projects.qi-hardware.com/eda-tools.git synced 2024-11-25 22:55:20 +02:00
eda-tools/schhist
Werner Almesberger d4405e4386 sanitize-profile accidently ignored LibDir, causing many incorrect "corrections"
- schhist/sanitize-profile: $1 vs. $2 typo when processing LibDir
2010-10-01 08:12:18 -03:00
..
ppmdiff Initial commit of files moved over from ben-wpan. 2010-09-07 17:03:19 -03:00
demo-index.html Added project sie-ceimtun. Plus some cleanup. 2010-09-25 05:27:50 -03:00
gitenealogy Initial commit of files moved over from ben-wpan. 2010-09-07 17:03:19 -03:00
gitsch2ps New script sanitize-schem to remove subsheets for which no file can be found. 2010-10-01 07:50:47 -03:00
gitwhoareyounow gitwhoareyounow: determine a file's final name in recorded future 2010-09-22 06:01:32 -03:00
Makefile Added project sie-ceimtun. Plus some cleanup. 2010-09-25 05:27:50 -03:00
normalizeschps Initial commit of files moved over from ben-wpan. 2010-09-07 17:03:19 -03:00
README gitwhoareyounow: determine a file's final name in recorded future 2010-09-22 06:01:32 -03:00
sanitize-profile sanitize-profile accidently ignored LibDir, causing many incorrect "corrections" 2010-10-01 08:12:18 -03:00
sanitize-schem New script sanitize-schem to remove subsheets for which no file can be found. 2010-10-01 07:50:47 -03:00
schhist2web New script sanitize-schem to remove subsheets for which no file can be found. 2010-10-01 07:50:47 -03:00
schps2pdf Initial commit of files moved over from ben-wpan. 2010-09-07 17:03:19 -03:00
schps2ppm Initial commit of files moved over from ben-wpan. 2010-09-07 17:03:19 -03:00
subschname2file schhist/subschname2file: search a subsheet name in the top-level sheet and 2010-09-22 06:42:06 -03:00

gitwhoareyounow
---------------

gitwhoareyounow is used to find a single identity for files that have been
renamed in the history of a project.

E.g., if a file foo.c is created in revision 1 (assuming successive revisions
numbered 1, 2, etc.) and renamed to bar.c in revision 2, gitwhoareyounow
would then return the name bar.c for this file in any revision we consider.

gitwhoareyounow has to be given a repository in which the historical commit
has been checked out, and the name the file had in that commit.

Example:

$ git init
$ date >foo.c
# git add foo.c
# git commit -m "foo.c, rev 1"
$ git mv foo.c bar.c
$ git commit -m "foo.c renamed to bar.c, rev 2"
$ git checkout HEAD~1
$ ls
foo.c
$ gitwhoareyounow . foo.c
bar.c


Multiple files may use the same identity
- - - - - - - - - - - - - - - - - - - - 

E.g., if a file foo.c is created in revision 1, deleted in revision 3, and
then a new file named foo.c is created in revision 4, gitwhoareyounow would
call both of them foo.c


Multiple files sharing the same identity can conflict
- - - - - - - - - - - - - - - - - - - - - - - - - - -

E.g., taking the first example with foo.c renamed to bar.c in revision 3, if
a file bar.c existed in revision 1 but was deleted in revision 2,
gitwhoareyounow running on revision 1 would identify both the foo.c and the
bar.c as bar.c

gitwhoareyounow does not try to resolve such conflicts. This is already
complex enough as it is :-)