David Haywood's Homepage
MAME work and other stuff
October 20, 2014 Haze Categories: General News. 18 Comments on Moving to Github

A number of you have probably noticed the old GIT mirror being up and down over the last few days, that’s because there’s been a fair bit of movement going on under the surface.

As per the announcement on mamedev.org the project is now officially being developed on Github, as opposed to our own inhouse operated SVN server. You can still pull the source exactly as before using your SVN client (tortoiseSVN or whatever you choose on Windows) but using the new address listed there instead of the one you’ve used in the past.

You can also update to a GIT based client for added functionality. The web based interface Github provides can be browsed like the GIT mirror, although there are currently some limitations imposed by GitHub (files per folder) that may cause some issues.

The old SVN server is now set to read only for everybody and will no longer be updated.

I don’t really have much to add to the announcement at this time, but feel it’s important to spread the message.

18 Comments

You can follow any responses to this entry through the RSS 2.0 feed.

Hi, I’m trying to use tortoiseSVN to update my source with the new “svn co https://github.com/mamedev/mame/trunk mame” address. I go to “Relocate” and put in the new address, but I get an “Illegal repository URL” message. Can anyone help?.

This is great news!

Will be so much easier now for people to fork MAME, and submit patches. Though it might be too easy and the team may get inundated with pull requests. :)

yeah, that’s not going to work.

the project was imported into GIT, it’s not a relocation of the SVN server, it’s a new server, the revision history etc. is a bit different as a result because AFAIK github just converts SVN requests to GIT ones but things are handled a bit different internally.

You can still use Tortoise SVN to keep yourself updated.

Right click in some empty folder and select SVN checkout and URL Repo. = https://github.com/mamedev/mame/trunk

yeah, that’s what I think I’ll do for a while, the GIT integration with Windows seems messy at best, even if it is more powerful.

however, the point remains, relocating an old tree from the old SVN server to the new SVN via GIT isn’t going to work :-)

If they’re good patches that’s a problem I think we’ll be happy to have.

To Haze: You said something in the Bannister Forums shoutbox about wanting Seibu “Pakkun Ball TV” added to MAME, but you never saw it for sale. I have seen it many times; in fact it is for sale right now for around $20.

is that the battle balls thing with the DVD for backgrounds? if there’s a complete kit for $20 you should PM me with details…

(also the version I was talking about was Gravure Collection , but I guess it’s the same thing, I’m quite curious about it) either way, drop me a PM on bannister.org, and I’ll forward it to the DU and see if anybody knows about it / wants to buy it.

Thanks for your help, Haze & B2K24.

Basic question: Many of the commits have a “(nw)” tag. Is this Not working or Now Working?

thx

‘No Whatsnew’

ie. tell our whatsnew generation script to ignore it, because we’ll write our own comments later, or it’s insignificant.

SourceTree is probably the best git UI for Windows, though I use commandline, but then I mainly use that in a Linux VM. :)

I think last time I looked, there were a few distributions of git for windows, and only one of them I found to be decent. But I forget what one that was. :/

We need those codes on each update, it will confuse a few people.
Thanks for the info.

Very weird here all times tortoise gimme the following error:

F:\emul\neogeo\compile\MAME_svn\src\mame\drivers\88games.c
F:\emul\neogeo\compile\MAME_svn\src\mame\drivers\a1supply.c
F:\emul\neogeo\compile\MAME_svn\src\mame\drivers\ace.c
The XML response contains invalid XML

I´m at WinXP 32 bits btw… :(

yeah, i’ve noticed that happen a few times. using SVN to interface GITHUB seems buggy at best, and if it fails usually it isn’t recoverable (just get a time-out / error trying to update again)

it also has a habit of insisting files are out of date even after resyncing if the line endings get checked in incorrectly etc.

unfortunately the git clients on Windows aren’t very friendly either, although maybe that’s just git, at times it can seem very counter-intuitive, and not always easy to read because you no longer have sequential revision numbers, and all the merging starts to make it look like commits came from different places etc.

if it helps to know, it’s taking some time for many of the actual devs to get to grips with it all too. 0.156 was actually scheduled for the Wednesday just gone, to establish a first release compiled from the new repository, but the transitional issues mean that’s been pushed back by at least a month.

After the initial confusion, I feel quite comfortable with SourceTree on my macbook: it keeps most local changes well separated from the main tree, and from time to time I just fetch+pull the ongoing progresses from the master tree to stay on sync.
when I’m ready to commit my updates, I just have to sync (with fetch+pull), “Add” the files, commit them locally, and finally push them to the master repo

in other words, by only making local commits when they are ready for mainline too, I have mostly recreated my previous svn workflow and the only times I’ve had problems (so far) has been when conflicting line endings were added to the repo

also, for people who are just going to compile the source without sending back code mods, dropping the svn interface is probably the best choice: after the initial checkout, they will just need to periodically invoke fetch followed by pull to be in sync with the master tree, and thus they can ignore every other git feature and just use those two :)

I have to admit that anyway even SourceTree is not 100% perfect: if you happen to make a commit at the same time as someone else, un-branching the tree becomes quite hard (even if I blame my personal adversion to learn git internals, more than SourceTree itself: there are too many options that I still have to learn ;) )

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close