git history and file moves

7 messages, 5 authors, 2016-06-15 · open the first message on its own page

git history and file moves

From: Lin Ming <hidden>
Date: 2016-06-15 22:45:31

I'm looking for a way to move files to a new directory and have the
full history follow the file automatically. Is this possible?

I know about --follow, but I want the history to just follow the file
transparently. Also, we have a git web interface and we want the full
history for the moved files to be available.

Thanks,
Lin Ming

Re: git history and file moves

From: Alex Riesen <hidden>
Date: 2016-06-15 22:45:31

2008/10/22 Lin Ming [off-list ref]:
I'm looking for a way to move files to a new directory and have the
full history follow the file automatically. Is this possible?

I know about --follow, but I want the history to just follow the file
transparently. ...
Of all Git tools, what does not do this "transparently" or "automatically"?
How more transparent do you imagine this?
What do you think should follow what?

I ask, because it is hard to understand what exactly is it you're missing:
merge support (which we have), git log listing the files as copied/renamed
(which is what --follow is for, and the suggestion for you is to make an
alias or something), git blame (ever looked at git gui blame?) or gitk
(which follows renames in default configuration)
Also, we have a git web interface and we want the full
history for the moved files to be available.
It is available. Whether it is shown is another question. git-web can
be improved (or just configured?)

Re: git history and file moves

From: Michael J Gruber <hidden>
Date: 2016-06-15 22:45:31

Alex Riesen venit, vidit, dixit 10/22/08 13:19:
2008/10/22 Lin Ming [off-list ref]:
quoted
I'm looking for a way to move files to a new directory and have the
full history follow the file automatically. Is this possible?

I know about --follow, but I want the history to just follow the file
transparently. ...
Of all Git tools, what does not do this "transparently" or "automatically"?
How more transparent do you imagine this?
What do you think should follow what?

I ask, because it is hard to understand what exactly is it you're missing:
merge support (which we have), git log listing the files as copied/renamed
(which is what --follow is for, and the suggestion for you is to make an
alias or something), git blame (ever looked at git gui blame?) or gitk
(which follows renames in default configuration)
quoted
Also, we have a git web interface and we want the full
history for the moved files to be available.
It is available. Whether it is shown is another question. git-web can
be improved (or just configured?)
By default, gitweb uses "-M" for diff. You can specify all options (-C,
-CC, -B) using  "@diff_opts" in the config file for gitweb.cgi - if that
is what you are using. Is it?

Anyways, using default configs for git log and gitweb.cgi both of them
show the full history (renames, history before and after) for me here,
using current git (1.6.0.3.514.g2f91b). What is your setup?

Michael

RE: git history and file moves

From: Moore, Robert <hidden>
Date: 2016-06-15 22:45:31

Here's what we have:

/var/www/cgi-bin/gitweb.acpica/gitweb.conf

Containts this : GITWEB_CSS = "/icons/gitweb.css";


What should we add to automatically get all file history?

Thanks,
Bob
-----Original Message-----
From: Michael J Gruber [mailto:git@drmicha.warpmail.net]
Sent: Wednesday, October 22, 2008 5:39 AM
To: Lin, Ming M
Cc: Alex Riesen; git@vger.kernel.org; Moore, Robert
Subject: Re: git history and file moves

Alex Riesen venit, vidit, dixit 10/22/08 13:19:
quoted
2008/10/22 Lin Ming [off-list ref]:
quoted
I'm looking for a way to move files to a new directory and have the
full history follow the file automatically. Is this possible?

I know about --follow, but I want the history to just follow the file
transparently. ...
Of all Git tools, what does not do this "transparently" or
"automatically"?
quoted
How more transparent do you imagine this?
What do you think should follow what?

I ask, because it is hard to understand what exactly is it you're
missing:
quoted
merge support (which we have), git log listing the files as
copied/renamed
quoted
(which is what --follow is for, and the suggestion for you is to make an
alias or something), git blame (ever looked at git gui blame?) or gitk
(which follows renames in default configuration)
quoted
Also, we have a git web interface and we want the full
history for the moved files to be available.
It is available. Whether it is shown is another question. git-web can
be improved (or just configured?)
By default, gitweb uses "-M" for diff. You can specify all options (-C,
-CC, -B) using  "@diff_opts" in the config file for gitweb.cgi - if that
is what you are using. Is it?

Anyways, using default configs for git log and gitweb.cgi both of them
show the full history (renames, history before and after) for me here,
using current git (1.6.0.3.514.g2f91b). What is your setup?

Michael

Re: git history and file moves

From: Alex Riesen <hidden>
Date: 2016-06-15 22:45:31

2008/10/24 Moore, Robert [off-list ref]:
Here's what we have:

/var/www/cgi-bin/gitweb.acpica/gitweb.conf

Containts this : GITWEB_CSS = "/icons/gitweb.css";

What should we add to automatically get all file history?
Nothing. It is the default. You can change the variable Michael
mentioned to use "-M -M -C -C" but it is very-very slow on any
kind of history worth its commits.

And you almost never talk about _file_ history in Git. It is all
_project_ history, filtered for commits which touch the file you're
interested in at the moment of looking.

RE: git history and file moves

From: Moore, Robert <hidden>
Date: 2016-06-15 22:45:31

What we are seeing is an issue after we do a file move to a new directory. Once moved, the previous history of the file is not readily available. One needs to know to use --follow on the command line, and worse, gitweb does not show the full history at all.

We have almost a decade of history on the project, from several different source control systems. We often find it useful to go back and find out when something changed, so we want to keep it and have it easily available.
-----Original Message-----
From: Alex Riesen [mailto:raa.lkml@gmail.com]
Sent: Friday, October 24, 2008 2:43 PM
To: Moore, Robert
Cc: Michael J Gruber; Lin, Ming M; git@vger.kernel.org
Subject: Re: git history and file moves

2008/10/24 Moore, Robert [off-list ref]:
quoted
Here's what we have:

/var/www/cgi-bin/gitweb.acpica/gitweb.conf

Containts this : GITWEB_CSS = "/icons/gitweb.css";

What should we add to automatically get all file history?
Nothing. It is the default. You can change the variable Michael
mentioned to use "-M -M -C -C" but it is very-very slow on any
kind of history worth its commits.

And you almost never talk about _file_ history in Git. It is all
_project_ history, filtered for commits which touch the file you're
interested in at the moment of looking.

Re: git history and file moves

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:45:31

"Moore, Robert" [off-list ref] writes:
Thanks,
Bob
quoted
-----Original Message-----
Michael J Gruber wrote:
quoted
Alex Riesen venit, vidit, dixit 10/22/08 13:19:
quoted
2008/10/22 Lin Ming [off-list ref]:
quoted
quoted
quoted
I'm looking for a way to move files to a new directory and have the
full history follow the file automatically. Is this possible?

I know about --follow, but I want the history to just follow the file
transparently. ...
Of all Git tools, what does not do this "transparently" or "automatically"?
[...]
quoted
quoted
quoted
Also, we have a git web interface and we want the full
history for the moved files to be available.
It is available. Whether it is shown is another question. git-web can
be improved (or just configured?)
By default, gitweb uses "-M" for diff. You can specify all options (-C,
-CC, -B) using  "@diff_opts" in the config file for gitweb.cgi - if that
is what you are using. Is it?

Anyways, using default configs for git log and gitweb.cgi both of them
show the full history (renames, history before and after) for me here,
using current git (1.6.0.3.514.g2f91b). What is your setup?
Here's what we have:

/var/www/cgi-bin/gitweb.acpica/gitweb.conf

Containts this : GITWEB_CSS = "/icons/gitweb.css";
This fragment has nothing to do with rename (file movement) detection.
What should we add to automatically get all file history?
While the 'commitdiff' view would, in default gitweb configuration,
contain information about file renames, currently 'history' view does
not support '--follow' option to git-log.  It wouldn't be too hard to
add it, but it just wasn't done (well, add to this the fact that
--follow works only for simple cases).

-- 
Jakub Narebski
Poland
ShadeHawk on #git
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help