[Openmcl-devel] making a git mirror of ccl

Dmitry Igrishin dfigrish at gmail.com
Thu Dec 17 15:01:10 PST 2015


2015-12-18 1:15 GMT+03:00 R. Matthew Emerson <rme at clozure.com>:

> I'm willing to work a bit on creating a git mirror of ccl on GitHub, but
> I'd appreciate advice from any people good at git on how such a mirror
> would work.
>
> http://trac.clozure.com/ccl/browser shows our repository layout.
>
> To summarize, it looks something like this:
>
> openmcl/
>
>   trunk/
>     source/     # source code, including sources for manual
>     tests/      # our fork of Dietz's ANSI CL test suite.
>
>     darwinx86/  # OS X platform directory
>       ccl/
>         dx86cl          # pre-compiled lisp kernel
>         dx86cl64        # ditto for 64-bit
>         dx86cl.image    # 32-bit heap image
>         dx86cl64.image  # 64-bit heap image
>         [plus externals to fetch the various subdirectories of
> ^/trunk/source/]
>
>     darwin-x86-headers/     # interface databases (binaries)
>     darwin-x86-headers64/   # 64-bit interface databases (binaries)
>
>     linuxx86/   # Liunx platform directory
>       ccl/
>         lx86cl
>         lx86cl64
>         lx86cl.image
>         lx86cl64.image
>
>     x86-headers/
>     x86-headers64/
>
>     linuxarm/
>       [...]
>     arm-headers/
>
>     # there are a few other assorted platforms;  they all look similar
>
>   branches/
>     [mostly just working branches, but some are worth preserving]
>
>   tags/
>     [...]     # a few releases are tagged; they're just copies of ^/trunk
>
>   release/
>     ...
>     1.9/
>       [...]   # a copy of ^/trunk/, only as of the 1.9 release, plus
> patches
>     1.10/
>       [...]   # a copy of ^/trunk for as of the 1.10 release, plus patches
>     1.11/
>       [...]   # you get the idea...
>
> I think what we'd like have in git would be just source/.  So, if we could
> arrange to put the following Subversion directories into git, I think we'd
> be doing well:
>
> ^/trunk/source as master

^/release/*/source as branches named 1.9-release, 1.10-release, etc.
>
Do you really need these branches? (For backpatches?) The Git allows just
to tag a some commits
to mark them as a release points.

>
> Maybe just ^/trunk/source would be enough to start out a git mirror with.
>
Seems to be enough.

>
> GitHub offers a mechanism to make "releases".  See
> https://help.github.com/articles/about-releases/.  If this provides a way
> to bundle up binaries and source in one download, that would be an
> acceptable way to distribute CCL.
>
Yes, and there is a way to make releases automatically via the Github API
as described at
https://developer.github.com/v3/repos/releases/#create-a-release

>
> I have to say that I'm not that unhappy with Subversion and Trac.  But,
> I'm willing to go though a certain amount of (unfunded) effort to
> experiment with git and GitHub in order to lower barriers (real or
> illusory) for non-Clozure affiliated people to contribute to CCL.
>
Let's give it a chance. ;-)

>
> Any experts care to weigh in?  Thanks for any suggestions and feedback.
>
I would like to help with automatic creation of "releases" via the GitHub
API,
but I'm really busy in near month.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20151218/dd3f86bf/attachment.htm>


More information about the Openmcl-devel mailing list