Official SDL mirror on github

A lot of people here seem to be talking about features specific to sites like Github and Bitbucket[1], rather than features unique to Git over Mercurial.

I don?t have an opinion on an official mirror of SDL, but if it were done it would make much more sense to do it on Bitbucket rather than Github since the former supports Mercurial natively and still has most of the features being talked about (forking, pull requests, etc.)

For people having trouble with Mercurial itself, tools like SourceTree[2] (already mentioned earlier in the thread) make it easier to use both Git and Mercurial.

1: https://bitbucket.org/features
2: http://sourcetreeapp.comOn Jul 9, 2014, at 10:36 AM, Nikos Chantziaras wrote:

I’ll just throw my two cents here.

I’ve contributed a few patches to SDL_mixer, and things seemed more difficult then they ought to be. When I’m using Git, working with code seems a lot easier. Unless I was doing something wrong, maintaining my own fork and working with branches and then rebasing everything before submitting the patches was a real hassle with mercurial. At one point I was forced to actually export patches on file with hg and then import them, or try to because hg seemed unable to deal with some conflicts. In Git, this is made easier and I can rebase in a new branch and then rebase again, or fast-forward or cherry-pick.

The result is that in the end I actually stop caring. At some point, Sam asked me to rebase a rather large-ish patch set so he can merge it (introducing simultaneous music stream playback), but I never got around to it simply because I didn’t want to deal with mercurial again.

GitHub makes things even easier, by being able to fork and submit pull requests, which can be inspected and commented on (even on a line by line basis) in a very nice way.

In GitHub, you can also disable the issue tracker and wiki and use external ones. Even if GitHub gets run over by a bus, this just means you move the official repo somewhere else, no big deal.


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

2014-07-09 15:54 GMT+02:00 Robotic-Brain :

If you totally do not want to host on github, just use the
"Integration-Manager Workflow" from the git book, where the "blessed repo"
is github and the “integration manager repo” is the master on libsdl.org

Quoted for emphasis.

Integration-Manager Workflow
http://git-scm.com/book/en/Distributed-Git-Distributed-Workflows#Integration-Manager-Workflow
on the git manual.

A lot of people here seem to be talking about features specific to
sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Btw, this wouldn’t have been an issue with git, since git allows one
to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything
about hg though, so I don’t know if there is an equivalentAm 09.07.2014 16:04, schrieb Alex Szpakowski:
Am 09.07.2014 09:58, schrieb neoaggelos at gmail.com:

Looks like mercurial may be getting shallow clones
http://mercurial.selenic.com/wiki/ShallowClone in the near future…On Wed, Jul 9, 2014 at 10:59 AM, Robotic-Brain wrote:

Am 09.07.2014 16:04, schrieb Alex Szpakowski:

A lot of people here seem to be talking about features specific to

sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Am 09.07.2014 09:58, schrieb neoaggelos at gmail.com:

Btw, this wouldn’t have been an issue with git, since git allows one
to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything
about hg though, so I don’t know if there is an equivalent


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Seems no one is against a github clone, or whatever feels demanded, as
much as it just keeps an hourly?/daily sync cron job
, and informs so.

hghub anyone? ;-)On Wed, Jul 9, 2014 at 5:08 PM, Alex Barry <alex.barry at gmail.com> wrote:

Looks like mercurial may be getting shallow clones
http://mercurial.selenic.com/wiki/ShallowClone in the near future…

On Wed, Jul 9, 2014 at 10:59 AM, Robotic-Brain wrote:

Am 09.07.2014 16:04, schrieb Alex Szpakowski:

A lot of people here seem to be talking about features specific to

sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Am 09.07.2014 09:58, schrieb neoaggelos at gmail.com:

Btw, this wouldn’t have been an issue with git, since git allows one
to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything
about hg though, so I don’t know if there is an equivalent


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Nah, Hg has nothing like thatOn 9 ??? 2014, at 5:59 ?.?., Robotic-Brain wrote:

Am 09.07.2014 16:04, schrieb Alex Szpakowski:

A lot of people here seem to be talking about features specific to
sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Am 09.07.2014 09:58, schrieb @Aggelos_Kolaitis:

Btw, this wouldn’t have been an issue with git, since git allows one
to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything about hg though, so I don’t know if there is an equivalent


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

I say stick to one or the other. Either one is adequate, but not both at the
same time. Since the maintainers and primary developers of SDL prefer hg, the
addition of github to the mix would result in a stale cache, mismatched tools, a
one-way patch stream, and added confusion.On 07/09/2014 11:47 AM, Juan Manuel Borges Ca?o wrote:

Seems no one is against a github clone, or whatever feels demanded, as
much as it just keeps an hourly?/daily sync cron job
, and informs so.

hghub anyone? :wink:

On Wed, Jul 9, 2014 at 5:08 PM, Alex Barry <alex.barry at gmail.com> wrote:

Looks like mercurial may be getting shallow clones
http://mercurial.selenic.com/wiki/ShallowClone in the near future…

On Wed, Jul 9, 2014 at 10:59 AM, Robotic-Brain wrote:

Am 09.07.2014 16:04, schrieb Alex Szpakowski:

A lot of people here seem to be talking about features specific to

sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Am 09.07.2014 09:58, schrieb neoaggelos at gmail.com:

Btw, this wouldn’t have been an issue with git, since git allows one
to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything
about hg though, so I don’t know if there is an equivalent


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

I would vote more or less for Git.
It is a lot faster than Mercurial.
Other than that it doesn’t matter where the repository is.On Wed, Jul 9, 2014 at 5:28 PM, John wrote:

I say stick to one or the other. Either one is adequate, but not both at
the same time. Since the maintainers and primary developers of SDL prefer
hg, the addition of github to the mix would result in a stale cache,
mismatched tools, a one-way patch stream, and added confusion.

On 07/09/2014 11:47 AM, Juan Manuel Borges Ca?o wrote:

Seems no one is against a github clone, or whatever feels demanded, as
much as it just keeps an hourly?/daily sync cron job
, and informs so.

hghub anyone? :wink:

On Wed, Jul 9, 2014 at 5:08 PM, Alex Barry <alex.barry at gmail.com> wrote:

Looks like mercurial may be getting shallow clones

http://mercurial.selenic.com/wiki/ShallowClone in the near future…

On Wed, Jul 9, 2014 at 10:59 AM, Robotic-Brain wrote:

Am 09.07.2014 16:04, schrieb Alex Szpakowski:

A lot of people here seem to be talking about features specific to

sites like Github and Bitbucket[1], rather than features unique to Git
over Mercurial.

Am 09.07.2014 09:58, schrieb neoaggelos at gmail.com:

Btw, this wouldn’t have been an issue with git, since git allows one

to do ‘git clone repo --depth 1’. This is a huge timesaver for people
that are not interested into cloning all 2000 commits of a package and
just want the newest version.

I think this is a very compelling reason for git. I don’t know anything
about hg though, so I don’t know if there is an equivalent


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Y’all can keep discussing the merits and flaws of git and Mercurial
(this is actually a very interesting conversation and I’m learning
things from it!), but to be clear: switching to git, or having an
official git mirror, is not happening at this point in time.

As I said before, anyone is welcome to clone to GitHub or
whatever–that’s the point of DVCS–but we won’t be doing anything
official on our end.

–ryan.

You can do something similar with hg by specifying a changeset as
your clone’s root. Mercrial’s way does allow you to push changes
back, but other clones based on your repository must specify the same
root?

JosephOn Wed, Jul 09, 2014 at 10:58:10AM +0300, neoaggelos at gmail.com wrote:

So others have the same feeling that the repo is getting too massive as well? That’s good to hear. And I sincerely consider this to be a very good idea.

Btw, this wouldn’t have been an issue with git, since git allows one to do ‘git clone repo --depth 1’. This is a huge timesaver for people that are not interested into cloning all 2000 commits of a package and just want the newest version.

Ryan:

… an official git mirror, is not happening at this point in time.

As I said before, anyone is welcome to clone to GitHub or whatever …
but we won’t be doing anything official on our end.

I think that’s a clear answer to Steward’s question “whether there is
any appetite to publish an official mirror of the Mercurial repository
to github”.

Cheers.

Lurker here, but I don’t see what would need to be so “official” about a
repo. As long as the people in charge of the repo sync in a timely fashion
and forward any reported issues on github to the official bugtracker…
that’s pretty much it. No SDL “official” commiter has to ever touch that
repo and OP already said the repo readme could clarify any issues. Again,
I’m missing the “official” part…

Cheers,On Wed, Jul 9, 2014 at 5:20 PM, Julian Winter wrote:

Ryan:

… an official git mirror, is not happening at this point in time.

As I said before, anyone is welcome to clone to GitHub or whatever … but
we won’t be doing anything official on our end.

I think that’s a clear answer to Steward’s question “whether there is any
appetite to publish an official mirror of the Mercurial repository to
github”.

Cheers.


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

I’m glad that my first post to this list generated such interesting traffic
:slight_smile:

Thanks for the feedback on the mirror, I completely understand and respect
your position.

My motivation for an official git mirror is to allow:

  1. Users to have confidence the mirror is always up to date.
  2. Users to have confidence the mirror is not a fork.
  3. Projects to reference the source of SDL using git submodules at a
    particular commit.

I’m particularly interested in #3 since we (Fun Propulsion Labs at Google)
are building pieces of technology and applications that reference existing
open source libraries and would prefer not to snapshot stuff into our
trees. At the moment we’ve taken the snapshot approach to LiquidFun
https://github.com/google/liquidfun (snapshotting googletest and freeglut)
but this doesn’t scale when projects have multiple dependencies.

Using one off scripts to download dependencies from different source
control systems isn’t particularly desirable since this ends up one-off
scripts that need to be maintained for multiple platforms and copied into
each project that requires them etc. etc. The Chrome and Android teams use
repo https://code.google.com/p/git-repo/ to handle multiple git projects,
where they have a load of git projects which are all pulled down to a
developers workstation using yet another git project to maintain a manifest
of projects to pull. This is cool for huge projects like Chrome and
Android but could be overkill to smaller technology components hence the
git submodules approach ( see what Cocos2d-x is starting to do here as an
example https://github.com/cocos2d/cocos2d-x ).

Anyway, that’s just where I’m coming from. As I said, I understand the
hesitance in mirroring so it’s possible that if we open source something
based upon SDL we’ll setup a git mirror that allows #1, #2 and #3 above.

Cheers,
StewartOn Wed, Jul 9, 2014 at 1:39 PM, Iv?n Vodopiviz wrote:

Lurker here, but I don’t see what would need to be so “official” about a
repo. As long as the people in charge of the repo sync in a timely fashion
and forward any reported issues on github to the official bugtracker…
that’s pretty much it. No SDL “official” commiter has to ever touch that
repo and OP already said the repo readme could clarify any issues. Again,
I’m missing the “official” part…

Cheers,

On Wed, Jul 9, 2014 at 5:20 PM, Julian Winter wrote:

Ryan:

… an official git mirror, is not happening at this point in time.

As I said before, anyone is welcome to clone to GitHub or whatever …
but we won’t be doing anything official on our end.

I think that’s a clear answer to Steward’s question “whether there is any
appetite to publish an official mirror of the Mercurial repository to
github”.

Cheers.


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org