From: Bill Door <duanemurphy@mac.com>
To: git@vger.kernel.org
Subject: git p4 diff-tree ambiguous argument error
Date: Thu, 10 Jul 2014 10:30:28 -0700 (PDT) [thread overview]
Message-ID: <1405013428825-7614774.post@n2.nabble.com> (raw)
$ git p4 sync --detect-branches --import-labels //main@all
... Lots of useful information elided
fatal: ambiguous argument 'git-p4-tmp/8031': unknown revision or path not in
the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
Command failed: ['git', 'diff-tree',
'6b3ef26a3e2635a5ff0170e15fdadb386672f8b9', 'git-p4-tmp/8031']
If I re-run the command, it works the second time. Of course there are
73000+ commits. This is gonna take a while.
I've done some debugging. It appears there is a timing problem between
git-p4 and git.
The failure occurs in P4Sync.searchParent(). Even though a checkpoint is
sent to git (for fast-import) just prior to the call to searchParent() in
importChanges(), the file does not yet exist. I used pdb, paused the program
just before the call to diff-tree and the file was missing. After the
program exits due to the error the file exists (i.e. the OS flushed the
file). This is why re-running continues to work, there is an "old" file with
basically the same information laying around (dangerous).
How can I get git (fast-import) to flush the file at the right time?
$ git --version
git version 1.7.12.4
$ python --version
Python 2.6.6
OS: GNU/Linux 2.6.32-431.el6.x86_64
--
View this message in context: http://git.661346.n2.nabble.com/git-p4-diff-tree-ambiguous-argument-error-tp7614774.html
Sent from the git mailing list archive at Nabble.com.
next reply other threads:[~2014-07-10 17:30 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-10 17:30 Bill Door [this message]
2014-07-10 18:07 ` git p4 diff-tree ambiguous argument error Luke Diamand
2014-07-10 18:08 ` Duane Murphy
2014-07-10 19:19 ` Duane Murphy
2014-07-12 18:10 ` Pete Wyckoff
2014-07-12 19:19 ` Duane Murphy
2014-07-11 17:40 ` Bill Door
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=1405013428825-7614774.post@n2.nabble.com \
--to=duanemurphy@mac.com \
--cc=git@vger.kernel.org \
/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 NNTP newsgroup(s).