From: Tor Arvid Lund Date: Wed, 11 Nov 2009 08:43:42 GMT Subject: Re: P4 Sync problem Message-ID: <1a6be5fa0911110043i63b5c032s7924f9f1cdfe32ee@mail.gmail.com> In-Reply-To: On Tue, Nov 10, 2009 at 2:56 PM, Dmitry Smirnov wrote: > Hi, > > I'm trying to import Perfoce client into Git repository. > I had configured git-p4.clent=MYCLIENT and git-p4.useclientspec=true. > > When runnign git p4 sync --verbose I got the follwing: > > c:\p4\views\Git\p4client>git p4 sync --verbose > Traceback (most recent call last): >  File "/usr/sbin/git-core//git-p4", line 1929, in ? >    main() >  File "/usr/sbin/git-core//git-p4", line 1924, in main >    if not cmd.run(args): >  File "/usr/sbin/git-core//git-p4", line 1676, in run >    changes = p4ChangesForPaths(self.depotPaths, self.changeRange) >  File "/usr/sbin/git-core//git-p4", line 442, in p4ChangesForPaths >    assert depotPaths > AssertionError Hi. So - I think the problem is that git-p4 doesn't understand what it is you want to sync. The git-p4.useclientspec flag was created for the purpose where your perforce depot may look like this: //depot/project1 //depot/project1/source_code //depot/project1/documentation //depot/project1/some_large_collection_of_binaries Then - if I set up my client spec like: //depot/... -//depot/project1/some_large_collection_of_binaries ... and do git p4 sync //depot/project1@all ... it should get all project1 files except the "some_large_collection_of_binaries" subdirectory (provided that you have set the git-p4.client and git-p4.useclientspec). -Tor Arvid-