Jean-Marc Lasgouttes wrote:
> Le 21/03/2012 16:14, Vincent van Ravesteijn a écrit :
>> There is also a 2.0.x branch in your first clone, so you can just
>> cherry-pick the commit to master directly onto this 2.0.x branch, and
>> push from there.
>
> But If I want to compile both the master and the branch without doing a 
> full rebuild everytime, I have to have two checkouts living in different 
> places, right? And moreover, I have to update satus.20x.

I believe more repositories are necessary and while its possible to clone
locally one from the other (and thus save some disk space), it will bring
problems with cryptic error messages for newcomers as you could see.

The simplest SVN-like scenario:

1. Checkout full repo 
    git clone g...@git.lyx.org:lyx trunk
2. Full mirror of branch as well, not through clone
    cp -r trunk branch; cd branch
3. Checkout branch 2.0.x
    git checkout 2.0.x
   (by default you commit & push directly to 2.0.x branch in "branch" dir from 
now on)

Now for the commit backporting:
(4. commit & push change into trunk 5. go to branch directory)

6. git pull (receive trunk change to the branch repo as well)

One problem is that the commit never equals thanks to status.20x changes,
so one of many ways could be to remember hash from the trunk commit (say XXXX) 
and:

7. git show XXXX | git apply   (patch the current tree with the commit XXX)
8. add your changes to status.20x
9. git commit
10. git push

Pavel

Reply via email to