git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Bug: git add with absolute path fails if repo root dir is a symlink
@ 2010-12-27  6:25 Alexander Gladysh
  2010-12-27  7:23 ` Alexander Gladysh
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Gladysh @ 2010-12-27  6:25 UTC (permalink / raw)
  To: git

Hi, list.

Yet another issue with Git symlink handling.

I can't run git add with absolute path if the repository's root
directory is a symlink.

Please see the transcript below for details.

Alexander.

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 10.10
Release:	10.10
Codename:	maverick

$ uname -a
Linux ubuntu 2.6.35-24-generic #42-Ubuntu SMP Thu Dec 2 01:41:57 UTC
2010 i686 GNU/Linux

$ git --version
git version 1.7.3.4

$ mkdir myrepo && cd myrepo
$ git init
$ touch alpha
$ git add alpha
$ git commit -m "initial commit"

$ cd ../
$ ln -s myrepo mysymlink
$ cd mysymlink
$ git status
$ touch beta

$ git add ~/tmp/git-test/mysymlink/beta
fatal: '/home/agladysh/tmp/git-test/mysymlink/beta' is outside repository

$ cd ../myrepo/
$ git add ~/tmp/git-test/myrepo/beta
$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#	new file:   beta
#

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug: git add with absolute path fails if repo root dir is a symlink
  2010-12-27  6:25 Bug: git add with absolute path fails if repo root dir is a symlink Alexander Gladysh
@ 2010-12-27  7:23 ` Alexander Gladysh
  2010-12-27  8:13   ` Carlo Marcelo Arenas Belon
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Gladysh @ 2010-12-27  7:23 UTC (permalink / raw)
  To: git

On Mon, Dec 27, 2010 at 09:25, Alexander Gladysh <agladysh@gmail.com> wrote:

> I can't run git add with absolute path if the repository's root
> directory is a symlink.

Note that this issue is also triggered if *any* of the directories in
path above of my repo are symlinks.

This is a show-stopper for my current workflow.

Is there a way to quickly workaround this somehow?

Alexander.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug: git add with absolute path fails if repo root dir is a symlink
  2010-12-27  7:23 ` Alexander Gladysh
@ 2010-12-27  8:13   ` Carlo Marcelo Arenas Belon
  0 siblings, 0 replies; 3+ messages in thread
From: Carlo Marcelo Arenas Belon @ 2010-12-27  8:13 UTC (permalink / raw)
  To: Alexander Gladysh; +Cc: git

On Mon, Dec 27, 2010 at 10:23:12AM +0300, Alexander Gladysh wrote:
> 
> > I can't run git add with absolute path if the repository's root
> > directory is a symlink.
> 
> Note that this issue is also triggered if *any* of the directories in
> path above of my repo are symlinks.

When using absolute path names, git will compare the path given with the
git work tree and any name that is referred through a symlink in that
will trigger a mismatch.

> Is there a way to quickly workaround this somehow?

use relative paths (implemented below through an alias named "myadd") :

[alias]
        myadd = "!sh -c 'cd `dirname \"$1\"` && git add `basename \"$1\"`' -"

so in your workflow you would use "myadd" instead of "add" to convert your
absolute paths (with symlinks) into relative paths

Carlo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-12-27  8:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-27  6:25 Bug: git add with absolute path fails if repo root dir is a symlink Alexander Gladysh
2010-12-27  7:23 ` Alexander Gladysh
2010-12-27  8:13   ` Carlo Marcelo Arenas Belon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).