Page 1 of 6

Git Migration

PostPosted: 19 Jul 2017, 21:47
by KrazyTheFox
This weekend we'll be making an attempt to migrate the code base to Git hosted on GitLab (https://git.cardforge.org) as part of an effort to increase code stability, improve automatic releases/snapshots/etc, and to make it easier to contribute to Forge. This change will make it so that anyone will be able to contribute to the project, not just approved committers.

At the moment, the plan of action is to do the next release of Forge on Friday, after which everyone's committing rights will be removed from Subversion so that we do not lose any commits. During the day on Saturday, I will be converting the project over to Git and uploading it to the aforementioned site. It is my hope that this will take less than 24 hours, but we all know how perfectly planned things go when it comes time to execute them.

The new process for committing code will be to clone the project to your namespace (easier than it sounds!) in GitLab, make modifications in local branches, then request that they be merged into the master copy. Another dev will have to review your request and approve it.

I highly recommend reading the Git Book (https://git-scm.com/book/en/v2) if you've never used Git before or need to brush up on it.

If you have any questions or concerns, let me know and I'll do my best to address them.

Re: Git Migration

PostPosted: 21 Jul 2017, 15:26
by friarsol
As quickly as I'm able to after the upcoming release i plan on revoking svn access to prevent accidental commits. Please speak up if you have questions

Re: Git Migration

PostPosted: 22 Jul 2017, 09:10
by Seravy
Started reading the above link.

"clients don’t just check out the latest snapshot of the files: they fully mirror the repository. Thus if any server dies, and these systems were collaborating via it, any of the client repositories can be copied back up to the server to restore it. Every clone is really a full backup of all the data."

so I wonder...how much data is that? Forge is a pretty large project.

"The most official build is available for download on the Git website. ... Another easy way to get Git installed is by installing GitHub for Windows. "
Which one do we need for Eclipse?

Re: Git Migration

PostPosted: 22 Jul 2017, 12:48
by friarsol
privileges have been revoked. Please sign up for a git account

Re: Git Migration

PostPosted: 22 Jul 2017, 15:42
by KrazyTheFox
Git repositories are very small in comparison to subversion ones. You're downloading a bunch of deltas, not a full copy at each commit.

Re: Git Migration

PostPosted: 23 Jul 2017, 20:29
by Max mtg
I've made a git account.
Hope, it is to be expected to see an empty repository for Forge project.

Re: Git Migration

PostPosted: 23 Jul 2017, 21:02
by KrazyTheFox
Max mtg wrote:I've made a git account.
Hope, it is to be expected to see an empty repository for Forge project.
Yes, I'm in the process of converting it right now. It's a sizable repository with a lot of history and it'll take a while to finish.

Everyone: If you signed up after Saturday morning, you'll need to add an alternative email to your GitLab account (instructions to come soon) to associate your commits in the form of <yourusernamewithoutspaces@cardforge.org>. For example, maxmtg@cardforge.org or krazythefox@cardforge.org. They're not real addresses (yet), but I did need to put something in there to prevent losing history.

Re: Git Migration

PostPosted: 24 Jul 2017, 15:03
by silly freak
Is there a way to clone the repository (read-only of course) without an account? If no, the software is still GPL according to the license in the latest release, so at least upon request, you have to offer access to the source code to users. In light of that, I'd recommend a route to source code access that does not require bugging one of the devs ;)

Re: Git Migration

PostPosted: 24 Jul 2017, 15:36
by KrazyTheFox
silly freak wrote:Is there a way to clone the repository (read-only of course) without an account? If no, the software is still GPL according to the license in the latest release, so at least upon request, you have to offer access to the source code to users. In light of that, I'd recommend a route to source code access that does not require bugging one of the devs ;)
Once it's converted and uploaded, it will be readily available to everyone, account or no. The idea behind this change is to make it more accessible, not less.

Re: Git Migration

PostPosted: 25 Jul 2017, 02:07
by Max mtg
KrazyTheFox wrote:Everyone: If you signed up after Saturday morning, you'll need to add an alternative email to your GitLab account (instructions to come soon) to associate your commits in the form of <yourusernamewithoutspaces@cardforge.org>. For example, maxmtg@cardforge.org or krazythefox@cardforge.org. They're not real addresses (yet), but I did need to put something in there to prevent losing history.
So, what exactly has to be done?

Re: Git Migration

PostPosted: 25 Jul 2017, 04:35
by KrazyTheFox
We've restored committing privileges for SVN for the time being, as the conversion is taking significantly longer than anticipated. I believe I have a way to continue the conversion without loss of data and will also investigate other conversion methods tomorrow that might be faster.

Also, instructions will come when I have a chance to write them. The conversion itself is more important and has taken my free time thus far. Unfortunately, there's a lot of work to do and I don't have much time to do it in.

For the time being, please only commit small changes and fixes--no large features or modifications. The Git master branch should contain the reasonably bug free version we have now so that new features and such can easily be branched off.

Re: Git Migration

PostPosted: 25 Jul 2017, 13:57
by silly freak
KrazyTheFox wrote:We've restored committing privileges for SVN for the time being, as the conversion is taking significantly longer than anticipated. I believe I have a way to continue the conversion without loss of data and will also investigate other conversion methods tomorrow that might be faster.
I don't have much SVN or Migration knowledge, but I'm very good with git and have some time this week, is there any way I can help you? Or are the problems solved and it's just a matter of time now?

Re: Git Migration

PostPosted: 22 Aug 2017, 13:19
by Goblin Hero
How's the migration going? I'm asking because I'm in the process of moving the site to another server and I need to know if I should install\configure svn on the new server.
P.S. I can archive and send you the whole svn directory to speed up things.

Re: Git Migration

PostPosted: 22 Aug 2017, 14:13
by Agetian
Goblin Hero wrote:How's the migration going? I'm asking because I'm in the process of moving the site to another server and I need to know if I should install\configure svn on the new server.
P.S. I can archive and send you the whole svn directory to speed up things.
I asked the other developers on Discord to respond about the current situation, so hopefully they'll also join in here shortly, but from what I understand, the process is taking considerably more time than initially expected, and as things stand right now, SVN is definitely in full and active use by the dev team, pending the completion of a migration process which can take an indeterminate amount of time due to various complications. Unless someone says otherwise and my information is not up to date, I'd say that yes, we might still need SVN on the new server for a while.

- Agetian

Re: Git Migration

PostPosted: 23 Aug 2017, 02:10
by friarsol
Yea, the Migration is on hold due to issues while attempting to transition. An archived svn directory might help speed things up so we can finish the migration more quickly, I'll see if Krazy thinks that's good. We'll keep you in the loop, for when we finish if you plan on removing the svn after we're done with it. Thanks again for hosting us :D