trunk/kdeedu/klettres
Thiago Macieira
thiago at kde.org
Sat Feb 19 14:50:34 GMT 2005
Andras Mantia wrote:
>and in KDE you have:
>/
>trunk
> project1
> my_branch
> project2
> my_branch2
That's not the layout I proposed.
The layout I proposed is:
/
trunk
project1
project2
branches
KDE
4.0
kde-common
kdelibs
kdebase
[...]
project1
4.0
4.1
project2
0.2
0.3
tags
project1
4.0.0
4.0.1
4.1.0
work
project2-kpart
project2-qt4
So, explaining better:
trunk: where normal development occurs. This is the next release of the
application/project. Like HEAD in CVS.
branches: when a release occurs, like KDE_3_3_BRANCH. Note I am also
proposing a project called "KDE" which would have the main projects
(kdelibs, kdebase, kdepim, kdenetwork, etc.)
tags: just that: tags. Official releases. Exactly like branches in layout.
work: work branches. Now this is an idea of mine. Why did I separate work
branches from release branches? Because we have too many branches
already, which makes /branches/ really crowded. The idea here is that you
create a branch to do some special work and then merge back into the
official one in /trunk (like, experimental porting to Qt4, redesigning
the app around a KPart, etc.)
The important thing about work is that you *erase* the branch once you're
done! This is not CVS! Branches don't have to live forever!
>I'm not sure which is better. In case of simply doing some
>"make_it_cool" thing, the second might be OK, but when a new release is
>made and the repository is branched, I'm not sure that either of the
>above would be good. In that case maybe a
Please don't name branches "make_it_cool".
So, the Release Dude would do this to create the KDE 4.0 release:
svn mkdir branches/KDE/4.0
for module in kde-common kdelibs kdebase kdepim kdenetwork kdemultimedia
kdeadmin kdeartwork [...]; do
svn cp trunk/$module branches/KDE/4.0
done
svn commit
Or, if we don't care about marking the extragears, www, etc. as "KDE 4.0
branch", one could do the following (no mkdir):
svn cp trunk branches/KDE/4.0
svn commit
The amarok developer releasing version 1.3:
svn cp trunk/kdeextragear-1/amarok branches/amarok/1.3
svn cp trunk/kdeextragear-1/amarok tags/amarok/1.3.0
ln -sf ../../KDE/3.4/kde-common/admin branches/amarok/1.3/admin
ln -sf ../../KDE/3.4/kde-common/admin tags/amarok/1.3.0/admin
svn commit
The Quanta developer creating a branch to work on supporting XHTML 2.0:
svn cp trunk/kdewebdev/quanta work/quanta-xhtml2
svn commit
Switching to the XHTML 2.0 support branch:
cd trunk/kdewebdev/quanta
svn switch https://svn.kde.org/home/kde/work/quanta-xhtml2
When you're done, merge the changes (still switched):
cd trunk/kdewebdev/quanta
svn switch https://svn.kde.org/home/kde/trunk/kdewebdev/quanta
svn merge https://svn.kde.org/home/kde/work/quanta-xhtml2
svn commit
And erase the stale branch:
svn rm https://svn.kde.org/home/kde/work/quanta-xhtml2
The current layout of the KDE CVS isn't very "Subversion-friendly". We
have our modules which are released in conjunction (kdelibs, kdebase,
etc.), but we have modules that aren't released at all (extragears, www).
If we wanted to make it friendlier, we would have to reorganise
everything. I am not sure people would welcome such a drastic change.
--
Thiago Macieira - thiago (AT) macieira (DOT) info
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
4. And æfter se scieppend ingelogode, he wrát "cenn", ac eala! se
rihtendgesamnung andswarode "cenn: ne wát hú cennan 'eall'. Ástynt."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20050219/d349c625/attachment.sig>
More information about the kde-core-devel
mailing list