git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally.
@ 2016-04-27 16:15 Jacob Smith
  2016-04-27 16:28 ` Stefan Beller
  0 siblings, 1 reply; 5+ messages in thread
From: Jacob Smith @ 2016-04-27 16:15 UTC (permalink / raw)
  To: git

On OS X, if the local p4 workspace root doesn't exist, then git-p4 can
fail on submit. The error message looks like this:

    Synchronizing p4 checkout...

    Git submit failed!
    shell-init: error retrieving current directory: getcwd: cannot
access parent directories: No such file or directory
    fatal: Unable to read current working directory: No such file or directory
    Command failed: ['git', 'rev-list', '--no-merges',
'remotes/p4/master..master']

The problem is in the function 'run()' around line 1957. The logic in
the code is:

    1. Detect if the clientPath exists;
    2. If the clientPath doesn't exist, set the 'new_client_dir'
variable to 'True';
    3. chdir() to the clientPath; then,
    4. If 'new_client_dir' is 'True', then p4_sync("...", True).

On my system, the call to `p4 sync -f` leaves the clientPath directory
that git-p4 had chdir()'d into an orphan, so the call to 'git rev-list
...' a few lines fails because the call to getcwd() fails (the
directory has no parents).

I can make the problem "go away" by moving the location of the call to
'chdir(self.clientPath, is_client_path=True)' after the call to
`p4_sync()`, but I'm not sure if that's really fixing the issue, or
not.

Thanks!
-j.

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

* Re: BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally.
  2016-04-27 16:15 BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally Jacob Smith
@ 2016-04-27 16:28 ` Stefan Beller
  2016-04-27 18:06   ` Jacob Smith
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Beller @ 2016-04-27 16:28 UTC (permalink / raw)
  To: Jacob Smith; +Cc: git@vger.kernel.org

On Wed, Apr 27, 2016 at 9:15 AM, Jacob Smith <jaroslov@gmail.com> wrote:
> On OS X,

Do you use the Git as provided from OS X? In that case you better report the bug
to Apple, as their version of Git is slightly different (not close on
upstream, by both
having additional patches as well as not following the upstream closely IIUC).

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

* Re: BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally.
  2016-04-27 16:28 ` Stefan Beller
@ 2016-04-27 18:06   ` Jacob Smith
  2016-04-27 20:53     ` Stefan Beller
  0 siblings, 1 reply; 5+ messages in thread
From: Jacob Smith @ 2016-04-27 18:06 UTC (permalink / raw)
  To: Stefan Beller; +Cc: git@vger.kernel.org

I debugged the issue using the script here:
    https://github.com/git/git/blob/master/git-p4.py
I'm not sure how close to the main repo that is.

On Wed, Apr 27, 2016 at 11:28 AM, Stefan Beller <sbeller@google.com> wrote:
> On Wed, Apr 27, 2016 at 9:15 AM, Jacob Smith <jaroslov@gmail.com> wrote:
>> On OS X,
>
> Do you use the Git as provided from OS X? In that case you better report the bug
> to Apple, as their version of Git is slightly different (not close on
> upstream, by both
> having additional patches as well as not following the upstream closely IIUC).

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

* Re: BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally.
  2016-04-27 18:06   ` Jacob Smith
@ 2016-04-27 20:53     ` Stefan Beller
  2016-04-28  7:36       ` Luke Diamand
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Beller @ 2016-04-27 20:53 UTC (permalink / raw)
  To: Jacob Smith, Lars Schneider, Luke Diamand; +Cc: git@vger.kernel.org

On Wed, Apr 27, 2016 at 11:06 AM, Jacob Smith <jaroslov@gmail.com> wrote:
> I debugged the issue using the script here:
>     https://github.com/git/git/blob/master/git-p4.py
> I'm not sure how close to the main repo that is.
>
> On Wed, Apr 27, 2016 at 11:28 AM, Stefan Beller <sbeller@google.com> wrote:
>> On Wed, Apr 27, 2016 at 9:15 AM, Jacob Smith <jaroslov@gmail.com> wrote:
>>> On OS X,
>>
>> Do you use the Git as provided from OS X? In that case you better report the bug
>> to Apple, as their version of Git is slightly different (not close on
>> upstream, by both
>> having additional patches as well as not following the upstream closely IIUC).

In that case, I have cc'd Luke and Lars, who work on p4

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

* Re: BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally.
  2016-04-27 20:53     ` Stefan Beller
@ 2016-04-28  7:36       ` Luke Diamand
  0 siblings, 0 replies; 5+ messages in thread
From: Luke Diamand @ 2016-04-28  7:36 UTC (permalink / raw)
  To: Stefan Beller; +Cc: Jacob Smith, Lars Schneider, git@vger.kernel.org

On 27 April 2016 at 21:53, Stefan Beller <sbeller@google.com> wrote:
> On Wed, Apr 27, 2016 at 11:06 AM, Jacob Smith <jaroslov@gmail.com> wrote:
>> I debugged the issue using the script here:
>>     https://github.com/git/git/blob/master/git-p4.py
>> I'm not sure how close to the main repo that is.
>>
>> On Wed, Apr 27, 2016 at 11:28 AM, Stefan Beller <sbeller@google.com> wrote:
>>> On Wed, Apr 27, 2016 at 9:15 AM, Jacob Smith <jaroslov@gmail.com> wrote:
>>>> On OS X,
>>>
>>> Do you use the Git as provided from OS X? In that case you better report the bug
>>> to Apple, as their version of Git is slightly different (not close on
>>> upstream, by both
>>> having additional patches as well as not following the upstream closely IIUC).
>
> In that case, I have cc'd Luke and Lars, who work on p4

Which version of p4 are you using?

Your suggested fix looks plausible though. Possibly it needs both
chdirs() so that "p4 sync" will work if the caller is using a
.p4config file in the p4 client directory to set the P4CLIENT.

Thanks!
Luke

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

end of thread, other threads:[~2016-04-28  7:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-27 16:15 BUG on OSX `git p4 submit` can fail when the workspace root doesn't exist locally Jacob Smith
2016-04-27 16:28 ` Stefan Beller
2016-04-27 18:06   ` Jacob Smith
2016-04-27 20:53     ` Stefan Beller
2016-04-28  7:36       ` Luke Diamand

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).