Hello,
Anyone know of a way to 'git p4 clone' and exclude files by type or name? For example, I want to clone a depot, but not pull down any .exe files. Haven't been able to find an answer in docs or other searches.
threads / discuss / 39358
Subject: git p4 clone - exclude file types
Hello,
Anyone know of a way to 'git p4 clone' and exclude files by type or name? For example, I want to clone a depot, but not pull down any .exe files. Haven't been able to find an answer in docs or other searches.
Re: git p4 clone - exclude file types
On 18/05/15 18:59, FusionX86 wrote:
> Hello, > > Anyone know of a way to 'git p4 clone' and exclude files by type or > name? For example, I want to clone a depot, but not pull down any .exe > files. Haven't been able to find an answer in docs or other searches.
I think you can use a client spec which excludes the files you want.
First, create a client spec that excludes the files you don't want:
Client: myclient
View:
//depot/mystuff/... //myclient/...
-//depot/mystuff/...exe //myclient/...exeThen clone with the --use-client-spec option:
$ export P4CLIENT=myclient $ git p4 clone --use-client-spec //depot/mystuff
And later on, when you want to catch up:
$ cd mystuff $ git p4 sync --use-client-spec
Luke
Re: git p4 clone - exclude file types
Thanks Luke, looks like this does work for excluding files when using git p4. Great!
Unrelated question...
While using git p4 I have noticed that most of the time the clone/sync operations hang and I have to keep retrying. The Perforce depot I'm currently working with is larger than I'd like and has a lot of binary files which might be the cause. The point it gets to in the clone/sync is always random and doesn't ever stop on the same files or file types. Sometimes it'll die soon after starting, but other times it almost completes and then dies. If I keep retrying, it will eventually complete. I haven't been able to narrow down the cause, but I do notice that the git-fast-import stops right as the clone/sync dies. I'm wondering if git is overwhelmed and terminates. Have you ever seen this? Any suggestions?
As always, thanks for the help while I work through this migration project.
On Mon, May 18, 2015 at 2:59 PM, Luke Diamand <luke@diamand.org> wrote:
> On 18/05/15 18:59, FusionX86 wrote: >> >> Hello, >> >> Anyone know of a way to 'git p4 clone' and exclude files by type or >> name? For example, I want to clone a depot, but not pull down any .exe >> files. Haven't been able to find an answer in docs or other searches. > > > I think you can use a client spec which excludes the files you want. > > First, create a client spec that excludes the files you don't want: > > Client: myclient > View: > //depot/mystuff/... //myclient/... > -//depot/mystuff/...exe //myclient/...exe > > Then clone with the --use-client-spec option: > > $ export P4CLIENT=myclient > $ git p4 clone --use-client-spec //depot/mystuff > > And later on, when you want to catch up: > > $ cd mystuff > $ git p4 sync --use-client-spec > > Luke >
Re: git p4 clone - exclude file types
On 19/05/15 08:38, FusionX86 wrote:
> Thanks Luke, looks like this does work for excluding files when using > git p4. Great! > > Unrelated question... > > While using git p4 I have noticed that most of the time the clone/sync > operations hang and I have to keep retrying. The Perforce depot I'm > currently working with is larger than I'd like and has a lot of binary > files which might be the cause. The point it gets to in the clone/sync > is always random and doesn't ever stop on the same files or file > types. Sometimes it'll die soon after starting, but other times it > almost completes and then dies. If I keep retrying, it will eventually > complete. I haven't been able to narrow down the cause, but I do > notice that the git-fast-import stops right as the clone/sync dies. > I'm wondering if git is overwhelmed and terminates. Have you ever seen > this? Any suggestions?
Running out of memory?
Is this on a 32bit or 64bit system? How much virtual memory do you have?
Luke
Re: git p4 clone - exclude file types
I thought about that, but no. The box I'm running git-p4 on has the following specs:
CentOS 6.6 64bit 1 CPU 8GB RAM 8GB Swap
It is also on the same physical network as the Perforce server. I remember seeing someone else complain about this, but I can't find the article/blog now.
On Wed, May 20, 2015 at 12:49 AM, Luke Diamand <luke@diamand.org> wrote:
> On 19/05/15 08:38, FusionX86 wrote: >> >> Thanks Luke, looks like this does work for excluding files when using >> git p4. Great! >> >> Unrelated question... >> >> While using git p4 I have noticed that most of the time the clone/sync >> operations hang and I have to keep retrying. The Perforce depot I'm >> currently working with is larger than I'd like and has a lot of binary >> files which might be the cause. The point it gets to in the clone/sync >> is always random and doesn't ever stop on the same files or file >> types. Sometimes it'll die soon after starting, but other times it >> almost completes and then dies. If I keep retrying, it will eventually >> complete. I haven't been able to narrow down the cause, but I do >> notice that the git-fast-import stops right as the clone/sync dies. >> I'm wondering if git is overwhelmed and terminates. Have you ever seen >> this? Any suggestions? > > > Running out of memory? > > Is this on a 32bit or 64bit system? How much virtual memory do you have? > > Luke >
Re: git p4 clone - exclude file types
On 21/05/15 21:49, FusionX86 wrote:
> I thought about that, but no. The box I'm running git-p4 on has the > following specs: > > CentOS 6.6 64bit > 1 CPU > 8GB RAM > 8GB Swap
Can you post the output, with "-v" added?
$ git-p4 clone //depot/some/dir -v
Also, what is your p4d server version?
$ p4 info
A quick test just cloning a repo with 4 files of 256MB each seems fine, FWIW.
> > It is also on the same physical network as the Perforce server. I > remember seeing someone else complain about this, but I can't find the > article/blog now. > > > On Wed, May 20, 2015 at 12:49 AM, Luke Diamand <luke@diamand.org> wrote: >> On 19/05/15 08:38, FusionX86 wrote: >>> >>> Thanks Luke, looks like this does work for excluding files when using >>> git p4. Great! >>> >>> Unrelated question... >>> >>> While using git p4 I have noticed that most of the time the clone/sync >>> operations hang and I have to keep retrying. The Perforce depot I'm >>> currently working with is larger than I'd like and has a lot of binary >>> files which might be the cause. The point it gets to in the clone/sync >>> is always random and doesn't ever stop on the same files or file >>> types. Sometimes it'll die soon after starting, but other times it >>> almost completes and then dies. If I keep retrying, it will eventually >>> complete. I haven't been able to narrow down the cause, but I do >>> notice that the git-fast-import stops right as the clone/sync dies. >>> I'm wondering if git is overwhelmed and terminates. Have you ever seen >>> this? Any suggestions? >> >> >> Running out of memory? >> >> Is this on a 32bit or 64bit system? How much virtual memory do you have? >> >> Luke >>
Re: git p4 clone - exclude file types
Sure, but it doesn't show anything other than the last file that p4/git was working on. It's always a different file, but looks something like this:
/path/to/file/somefile1 /path/to/file/somefile2
and then just hangs...
It is trying to clone ~42846 files.
The p4d server version is older. It hasn't been maintained and we have no support. The version is: P4D/NTX64/2012.1/459601 (2012/05/09)
The single CPU does hit 100% at times, but it doesn't last and load is never high. Thought about adding a second CPU to see if it helps by chance. This isn't a show stopper since I can eventually get it to work if I keep trying, but figured I'd send it out to the community.
On Thu, May 21, 2015 at 3:49 PM, Luke Diamand <luke@diamand.org> wrote:
> On 21/05/15 21:49, FusionX86 wrote: >> >> I thought about that, but no. The box I'm running git-p4 on has the >> following specs: >> >> CentOS 6.6 64bit >> 1 CPU >> 8GB RAM >> 8GB Swap > > > Can you post the output, with "-v" added? > > $ git-p4 clone //depot/some/dir -v > > Also, what is your p4d server version? > > $ p4 info > > A quick test just cloning a repo with 4 files of 256MB each seems fine, > FWIW. > > >> >> It is also on the same physical network as the Perforce server. I >> remember seeing someone else complain about this, but I can't find the >> article/blog now. >> >> >> On Wed, May 20, 2015 at 12:49 AM, Luke Diamand <luke@diamand.org> wrote: >>> >>> On 19/05/15 08:38, FusionX86 wrote: >>>> >>>> >>>> Thanks Luke, looks like this does work for excluding files when using >>>> git p4. Great! >>>> >>>> Unrelated question... >>>> >>>> While using git p4 I have noticed that most of the time the clone/sync >>>> operations hang and I have to keep retrying. The Perforce depot I'm >>>> currently working with is larger than I'd like and has a lot of binary >>>> files which might be the cause. The point it gets to in the clone/sync >>>> is always random and doesn't ever stop on the same files or file >>>> types. Sometimes it'll die soon after starting, but other times it >>>> almost completes and then dies. If I keep retrying, it will eventually >>>> complete. I haven't been able to narrow down the cause, but I do >>>> notice that the git-fast-import stops right as the clone/sync dies. >>>> I'm wondering if git is overwhelmed and terminates. Have you ever seen >>>> this? Any suggestions? >>> >>> >>> >>> Running out of memory? >>> >>> Is this on a 32bit or 64bit system? How much virtual memory do you have? >>> >>> Luke >>> >