public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: boulderfans@comcast.net
To: cygwin@cygwin.com
Subject: Git issue.
Date: Sun, 22 Nov 2015 23:30:00 -0000	[thread overview]
Message-ID: <1271139068.9180259.1448235027708.JavaMail.zimbra@comcast.net> (raw)
In-Reply-To: <1032375163.9174650.1448234447549.JavaMail.zimbra@comcast.net>

I've run into a problem when using the --git-dir option in git. It appears to have been introduced since git 2.4.x.

Here's an example of the problem using a locally built version (2.6.3) of git with some annotated error output:

[/cygdrive/d/projects]
$ git --version
git version 2.6.3-cyg

[/cygdrive/d/projects]
$ git --git-dir=d:/projects/git-git/.git config alias.foo ls-files
error: Unable to open tempfile: /cygdrive/d/projects/d:/projects/git-git/.git/config.lock
error: could not lock config file d:/projects/git-git/.git/config: No such file or directory

The problem is that the code that is checking the --git-dir option doesn't work properly if you use a DOS drive:/path specification. I tracked it down to the fact that has_dos_drive_prefix() is not implemented and always returns false.  From git-compat-util.h:

#ifndef has_dos_drive_prefix 
static inline int git_has_dos_drive_prefix(const char *path) 
{ 
return 0; 
} 
#define has_dos_drive_prefix git_has_dos_drive_prefix 
#endif 

It looks like there is an implementation of the function for a MinGW build (compat/mingw.c) but not for the Cygwin build. There were changes in this area about a year ago, but I'm not exactly sure what changed to cause this problem to appear.

Thanks. 

-Matt 

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

       reply	other threads:[~2015-11-22 23:30 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1032375163.9174650.1448234447549.JavaMail.zimbra@comcast.net>
2015-11-22 23:30 ` boulderfans [this message]
2015-12-03 20:42   ` Adam Dinwoodie
2015-12-04  0:07     ` Matt Smith
2015-12-04 17:04       ` Adam Dinwoodie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1271139068.9180259.1448235027708.JavaMail.zimbra@comcast.net \
    --to=boulderfans@comcast.net \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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 read-only IMAP folder(s) and NNTP newsgroup(s).