Thread (8 messages) flat view 8 messages, 2 authors, 2016-06-15

Re: [PATCH 8/9 v11] difftool: teach difftool to handle directory diffs

From: Tim Henigan <hidden>
Date: 2016-06-15 22:53:32

Hi David,

Thank you for the review.  I am working on the changes you suggested,
but want to discuss one of them:

On Mon, Apr 9, 2012 at 8:14 AM, David Aguilar [off-list ref] wrote:
On Wed, Apr 4, 2012 at 12:21 PM, Tim Henigan [off-list ref] wrote:
quoted
+
+       # If the diff including working copy files and those
+       # files were modified during the diff, then the changes
+       # should be copied back to the working tree
+       my $repo = Git->repository();
+       my $workdir = $repo->repo_path() . "/..";
Does this work when $GIT_WORK_TREE / core.worktree are defined?
I had not considered this case and the existing code will certainly
ignore alternate work tree locations.  To fix the problem, I plan to
add something like this:

+sub find_worktree
+{
+       my $worktree;
+       my $env_worktree = $ENV{GIT_WORK_TREE};
+       my $core_worktree = Git::config('core.worktree');
+
+       if (length($env_worktree) > 0) {
+               $worktree = $env_worktree;
+       } elsif (length($core_worktree) > 0) {
+               $worktree = $core_worktree;
+       } else {
+               my $repo = Git->repository();
+               $worktree = $repo->repo_path() . "/..";
+       }
+
+       return $worktree;
+}

Does this look like a reasonable solution?  I don't typically use
'$GIT_WORK_TREE' or 'core.worktree'.  The above function works for me,
but I would appreciate some feedback before I send the next revision
of the patch (v12!).

Thanks,
Tim
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help