# git-p4 and changing p4 depot path

3 messages from 2008-09-05 to 2008-09-05. Participants: Kevin Williams, Tor Arvid Lund.
Thread: https://gitlist.dev/t/15385

## Kevin Williams, 2008-09-05 16:47

Subject: git-p4 and changing p4 depot path
Message-ID: <683a886f0809050947k3b461495u459607dccf891698@mail.gmail.com>
URL: https://gitlist.dev/e/683a886f0809050947k3b461495u459607dccf891698%40mail.gmail.com

```
I've got some code I've been working on in a local git repository that
I cloned from Perforce using git-p4. Now, I need to commit my changes
to a *different depot path* within Perforce. Since the p4 depot path
is stored in the logs rather than config, and logs are immutable
because commits are immutable, it seems I cannot do this. Is there any
way to do this? Why isn't the depot path stored in config? Please
help!

-- 
Cheers,

Kevin Williams
http://kevwil.com/

```

## Tor Arvid Lund, 2008-09-05 18:04

Subject: Re: git-p4 and changing p4 depot path
Message-ID: <1a6be5fa0809051104g59e08b2dya37add721483d390@mail.gmail.com>
URL: https://gitlist.dev/e/1a6be5fa0809051104g59e08b2dya37add721483d390%40mail.gmail.com
In-Reply-To: <683a886f0809050947k3b461495u459607dccf891698@mail.gmail.com>

```
Hi,

On Fri, Sep 5, 2008 at 6:47 PM, Kevin Williams <kevwil@gmail.com> wrote:
> I've got some code I've been working on in a local git repository that
> I cloned from Perforce using git-p4. Now, I need to commit my changes
> to a *different depot path* within Perforce. Since the p4 depot path
> is stored in the logs rather than config, and logs are immutable
> because commits are immutable, it seems I cannot do this. Is there any
> way to do this? Why isn't the depot path stored in config? Please
> help!

I'm not sure I understand why you want to commit to a different
path... Is is just another branch in p4?

In that case, git-p4 already has some support for working with all
branches of a project, given that they all reside under a common path,
like:

//depot/path/to/project/MAIN
//depot/path/to/project/REL_1_4

... where MAIN and REL_1_4 are branches of 'project'. This can be
cloned by invoking

git p4 clone --detect-branches //depot/path/to/project@all

When you are ready to push your git commits to p4, git-p4 will use the
log message of the nearest parent commit from p4 to determine which
depot path (branch) to use. In this way, you can commit your work to
different p4 branches.

-Tor Arvid Lund-

```

## Kevin Williams, 2008-09-05 18:54

Subject: Re: git-p4 and changing p4 depot path
Message-ID: <683a886f0809051154r4b8a8121j7e0b7694ad728661@mail.gmail.com>
URL: https://gitlist.dev/e/683a886f0809051154r4b8a8121j7e0b7694ad728661%40mail.gmail.com
In-Reply-To: <1a6be5fa0809051104g59e08b2dya37add721483d390@mail.gmail.com>

```
Thanks for the detailed explanation. That will definitely come in
handy next time.

I was working against one path, then was told to commit to a p4 branch location.

I ended up copying my files in the git-p4 working dir over to the p4
working dir and committing from there, so not a problem anymore, but
I'm impressed that there's a way to do it right from git-p4.

Now if I could just convince IT to switch to git .... :)

On Fri, Sep 5, 2008 at 12:04 PM, Tor Arvid Lund <torarvid@gmail.com> wrote:
> Hi,
>
> On Fri, Sep 5, 2008 at 6:47 PM, Kevin Williams <kevwil@gmail.com> wrote:
>> I've got some code I've been working on in a local git repository that
>> I cloned from Perforce using git-p4. Now, I need to commit my changes
>> to a *different depot path* within Perforce. Since the p4 depot path
>> is stored in the logs rather than config, and logs are immutable
>> because commits are immutable, it seems I cannot do this. Is there any
>> way to do this? Why isn't the depot path stored in config? Please
>> help!
>
> I'm not sure I understand why you want to commit to a different
> path... Is is just another branch in p4?
>
> In that case, git-p4 already has some support for working with all
> branches of a project, given that they all reside under a common path,
> like:
>
> //depot/path/to/project/MAIN
> //depot/path/to/project/REL_1_4
>
> ... where MAIN and REL_1_4 are branches of 'project'. This can be
> cloned by invoking
>
> git p4 clone --detect-branches //depot/path/to/project@all
>
> When you are ready to push your git commits to p4, git-p4 will use the
> log message of the nearest parent commit from p4 to determine which
> depot path (branch) to use. In this way, you can commit your work to
> different p4 branches.
>
> -Tor Arvid Lund-
>



-- 
Cheers,

Kevin Williams
http://kevwil.com/

```
