[pymvpa] /Developers only/ GIT repository/clones restructuring/migration
Yaroslav Halchenko
debian at onerussian.com
Wed Aug 11 16:23:32 UTC 2010
Dear PyMVPA Developers,
We are in the process of migrating from "single GIT repository for
everyone" to more distributed flow of development provided by Github.
Major change
============
you should not push to alioth.debian.org (AKA git.debian.org) your
development branches (e.g. your_name/master) -- they all should reside
in your own clones at github -- please move them over or remove from
alioth::
remotes/alioth/sg/myflexds
remotes/alioth/val/libsvm+newsl+nodc
remotes/alioth/val/new-sl
To remove branch (or tag) from alioth (after you pushed it to your
github clone), just do::
git push <alioth_remote> :<branch_name>
New workflow
============
We will primarily use github for the development. Therefore:
alioth.debian.org (AKA git.debian.org)
Will eventually be deprecated. For now it will carry all releases and
associated Debian packaging, since X-Vcs fields in Debian packages
point to this repository. New development will not be pushed into
this repository. All personal branches should migrate off it.
Websites will be updated soon to reflect this
http://github.com/PyMVPA/PyMVPA
The main repository -- source for all of your forks on github.
It will contain
- release and distribution releases tags (signed/annotated)
- maint/* (maintenance) and dist/* (distribution) branches
- master branch -- marginally well tested thus usable (not quite so atm)
development branch
- website/www, website/dev -- only fast-forward branches which would
point to the last location of website updates
No _tent branches, nor +tent tags should be pushed in there.
Only annotated tags for upstream or distribution releases should end
up there
http://github.com/<github_user>/PyMVPA
Development environments -- feel free to create your own. Should contain
- master branch -- development/integration branch, intended to be
eventually pushed (thus fast-forward only) as master of
PyMVPA/PyMVPA repository
- _tent/ (tentative) feature and _bf/ (bugfix) branches which you
would like us (or you into your master first) to integrate
- +tent/ unsigned/unannotated tags to point at the locations when
your corresponding _tent/ branch got accepted (not necessary if
feature is "minimalistic" and not worth memorizing)
Do not forget to remove _tent/ branches from your clones upon
integration, with smth like::
git br -d _tent/<name>
git push origin :_tent/<name>
Course of action
================
# if you relied on <name>/* branches on alioth and haven't yet created
your fork on github, please do so by visiting
http://github.com/PyMVPA/PyMVPA and clicking on "Fork button"
# we did some cleanup of repositories, so to get your local copies
cleaned up a bit, please do::
git fetch --all --prune
git tag | grep -e __ -e last_we -e sg/unittests_passed | xargs git tag -d
git push <your_github_clone> :last_website_update
git push <your_github_clone> :sg/unittests_passed
WARNING
=======
As you could guess from manual removal of tags above, tags in git
are somewhat viral. If you add someone's repository as a remote and
fetch -- you will obtain all tags from that remote, and then they would
propagate to others who would clone you, etc... So, please
# follow the conventions above
# do not push to remotes all kinds of useless/temporary tags
If you want to pull someones' changes into your tree, and do not want to
fetch his tags, you can pull directly using URL and branchnames, smth
like::
git pull git at github.com:PyMVPA/PyMVPA.git master
--
.-.
=------------------------------ /v\ ----------------------------=
Keep in touch // \\ (yoh@|www.)onerussian.com
Yaroslav Halchenko /( )\ ICQ#: 60653192
Linux User ^^-^^ [175555]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-exppsy-pymvpa/attachments/20100811/9d3a1542/attachment.pgp>
More information about the Pkg-ExpPsy-PyMVPA
mailing list