Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: My plans for the website tools  (Read 22924 times)

0 Members and 1 Guest are viewing this topic.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
My plans for the website tools
« on: March 18, 2011, 01:19:53 pm »
Hi

In my process of upgrading/changing everything before SFML 2 is out, today I've decided which tools I'm going to use. Just let me know what you think about it ;)

* forum : SMF 2.0 RC5
* code repository : switching from SVN to GIT, and from sourceforge.net to github
* task tracker : the one provided by github
* wiki : the one provided by github

In case you're scared by so many changes:
- I can export the current forum to the new one without losing anything
- I can export the current SVN repository to the new one without losing anything
- I can export the current tasks to the new tracker manually, there's not much to do :D
- I will probably not be able to import the wiki however, so I think I'll need a little help for that

I keep it short, just ask questions if you want or leave your comments ;)
Laurent Gomila - SFML developer

Nexus

  • SFML Team
  • Hero Member
  • *****
  • Posts: 6287
  • Thor Developer
    • View Profile
    • Bromeon
My plans for the website tools
« Reply #1 on: March 18, 2011, 01:42:34 pm »
Why do you switch from SVN to Git? I'm not too familiar with Git, but it seemed to me rather complicated compared to SVN (which I consider a very nice version control system). On Windows, TortoiseSVN is also a great tool, is there something similar for Git?

Isn't SVN also used more widely? I personally don't know a lot of people using Git.
Zloxx II: action platformer
Thor Library: particle systems, animations, dot products, ...
SFML Game Development:

panithadrum

  • Sr. Member
  • ****
  • Posts: 304
    • View Profile
    • Skyrpex@Github
    • Email
My plans for the website tools
« Reply #2 on: March 18, 2011, 01:45:30 pm »
Quote from: "Nexus"
Why do you switch from SVN to Git? I'm not too familiar with Git, but it seemed to me rather complicated compared to SVN (which I consider a very nice version control system). On Windows, TortoiseSVN is also a great tool, is there something similar for Git?

Isn't SVN also used more widely? I personally don't know a lot of people using Git.

I'm wondering the same as Nexus. Anyway, there is TortoiseGIT!

Groogy

  • Hero Member
  • *****
  • Posts: 1469
    • MSN Messenger - groogy@groogy.se
    • View Profile
    • http://www.groogy.se
    • Email
My plans for the website tools
« Reply #3 on: March 18, 2011, 02:18:50 pm »
Git is getting more and more actually. For instance the whole Ruby project is located on Github if memory serves me right.

Is there a TortoiseGit?

Anyway it will be much better to have everything located at the same place. I can help you with moving the english part of the wiki.
Developer and Maker of rbSFML and Programmer at Paradox Development Studio

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
My plans for the website tools
« Reply #4 on: March 18, 2011, 02:24:46 pm »
Quote
Why do you switch from SVN to Git?

GIT is really much better, in fact after using it everyday at work I can hardly work with SVN anymore. It would be really long to tell you why it's better, I guess you can find such comparisons with Google; but if you don't I'll try to elaborate a little bit ;)
The most important thing is that it's a decentralized system, which means that there's no server, only clones. So people (especially me) can work locally without pushing anything to the main clone, or can fork and work on their own clone and then submit a "pull request" (which is a request to merge their clone to the main one), etc. Branching and tagging is also much more flexible and lightweight.

Quote
I'm not too familiar with Git, but it seemed to me rather complicated compared to SVN (which I consider a very nice version control system)

In fact GIT is a superset of SVN (you can even use GIT on top of a SVN repository directly). So at least you can do exactly the same as you did with SVN, and if you want more you can learn a little bit about the extra commands and do more powerful stuff.

Quote
On Windows, TortoiseSVN is also a great tool, is there something similar for Git?

Of course, every version control system has its Tortoise app ;)
Here it's TortoiseGIT, and it behaves exactly the same as TortoiseSVN -- maybe too much, sometimes it's confusing because it keeps SVN concepts unchanged but they don't match GIT anymore.

Quote
Isn't SVN also used more widely? I personally don't know a lot of people using Git.

In fact I think that GIT, and decentralized systems in general, are getting more used and will eventually replace SVN one day. Because decentralized systems are really more powerful.
Have a look at github and gitorious, you'll see plenty of well known projects using GIT.
Laurent Gomila - SFML developer

devlin

  • Full Member
  • ***
  • Posts: 128
    • View Profile
My plans for the website tools
« Reply #5 on: March 18, 2011, 02:36:44 pm »
I for one welcome the change to GIT. It's far better for managing code - but SVN still has its strengths (like large binary data like media files that aren't easily mergable - requiring locks on files to prevent people from doing work in vain).

You should celebrate the move to GIT by getting the ATI fix out on it ;)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
My plans for the website tools
« Reply #6 on: March 18, 2011, 02:43:56 pm »
Quote
You should celebrate the move to GIT by getting the ATI fix out on it

I will 8)
That will be my first branch (by the way, sfml2 will become master and trunk will be a 1.6 tag), so that people can test it and give feedback before it's integrated "officially".
Laurent Gomila - SFML developer

pdinklag

  • Sr. Member
  • ****
  • Posts: 330
  • JSFML Developer
    • View Profile
    • JSFML Website
My plans for the website tools
« Reply #7 on: March 18, 2011, 03:16:06 pm »
Git is probably the better choice for the distributed development of the several bindings.

You might reserve a repos for a Java binding, cause I might decide to make mine public, it's working pretty well so far. :)

Quote
You should celebrate the move to GIT by getting the ATI fix out on it

Yay!
JSFML - The Java binding to SFML.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
My plans for the website tools
« Reply #8 on: March 18, 2011, 03:24:59 pm »
Quote
You might reserve a repos for a Java binding, cause I might decide to make mine public, it's working pretty well so far.

I still don't know what will be the best way to handle external bindings with GIT:
- keeping them like they are currently, on the main SFML repository?
- asking developers to create their own github repositories, and using sub-modules or forking?
- kicking them out and let them use whatever they want :D
Laurent Gomila - SFML developer

Groogy

  • Hero Member
  • *****
  • Posts: 1469
    • MSN Messenger - groogy@groogy.se
    • View Profile
    • http://www.groogy.se
    • Email
My plans for the website tools
« Reply #9 on: March 18, 2011, 03:52:54 pm »
Well I think the most important thing is to keep a link from the website to have it easy for people to find and download them.
Developer and Maker of rbSFML and Programmer at Paradox Development Studio

pdinklag

  • Sr. Member
  • ****
  • Posts: 330
  • JSFML Developer
    • View Profile
    • JSFML Website
My plans for the website tools
« Reply #10 on: March 18, 2011, 03:59:26 pm »
Dedicated repositories per binding would be the way to go if you ask me, but they should all be linked to the SFML project as Groogy mentioned. That can be done on the website. Have a separate "Bindings" page and mention them there.

That way each author can decide what he wants to use. If github allows multiple repositories per project, that would be a way, too.
JSFML - The Java binding to SFML.

Tank

  • SFML Team
  • Hero Member
  • *****
  • Posts: 1486
    • View Profile
    • Blog
    • Email
My plans for the website tools
« Reply #11 on: March 18, 2011, 04:30:58 pm »
Holy gosh! I really appreciate every single change you announced.

I've been using the SFML repository in a local Git clone for a very long time now to be not forced to use that SVN crap, again (like you said: once you get used to it, you will never want to get back to a centralized system like Subversion). And to everybody who hasn't worked with Git, yet: Pay attention when using tools like TortoiseGit. It tries to simplify things but sometimes hides the philosophy of Git. So you better start off by using the Git binary directly. Once you're used to it, you may switch-over to a GUI (but I bet you don't want to do that, then ;)).

SMF2 also sounds good. We have that version running for several weeks now at sfml-dev.de and are quite pleased with it. No problems so far.

For the project management stuff I think GitHub will be a good place (issue tracker and wiki). If you have Ruby-enabled (or Rails) webspace, you may want to take a look at Redmine (if I remember correctly, you're already using it for CAMP). But however, I think it's a great step forward for SFML because it's an easier way for contributers to jump in.

Regarding the bindings: Personally I go with pdinklag, however you have to clarify: If bindings are officially supported by SFML, then they may be included in SFML's upstream repository. However this can be confusing when, for example, the .NET binding is mainly maintained by you, so you include it, and others like Ruby are separate. So the best option would be to completely kick them off of SFML's repository IMHO.

Keep it going! :)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
My plans for the website tools
« Reply #12 on: March 18, 2011, 04:45:10 pm »
Quote
If you have Ruby-enabled (or Rails) webspace, you may want to take a look at Redmine (if I remember correctly, you're already using it for CAMP).

That was my second option, but using github will:
- save SQL space on my own website
- save one additional authentication for users
- save installation/maintenance time for me

Quote
If bindings are officially supported by SFML, then they may be included in SFML's upstream repository. However this can be confusing when, for example, the .NET binding is mainly maintained by you, so you include it, and others like Ruby are separate. So the best option would be to completely kick them off of SFML's repository IMHO.

Yep, sounds good. However I hope that it won't become too complicated to retrieve and compile all those separate things, compared to the current situation where everything is at the same place.
Laurent Gomila - SFML developer

Nexus

  • SFML Team
  • Hero Member
  • *****
  • Posts: 6287
  • Thor Developer
    • View Profile
    • Bromeon
My plans for the website tools
« Reply #13 on: March 18, 2011, 05:23:50 pm »
Quote from: "Laurent"
GIT is really much better, in fact after using it everyday at work I can hardly work with SVN anymore. It would be really long to tell you why it's better, I guess you can find such comparisons with Google; but if you don't I'll try to elaborate a little bit ;)
I think I will take the opportunity to learn Git when SFML starts to work with it. As I understand it, the switching is more or less definitive :)

Quote from: "Laurent"
Of course, every version control system has its Tortoise app ;)
Here it's TortoiseGIT, and it behaves exactly the same as TortoiseSVN -- maybe too much, sometimes it's confusing because it keeps SVN concepts unchanged but they don't match GIT anymore.
Hm, do you know a good alternative? I'm not a big fan of command line tools on Windows, however shell extensions like TortoiseSVN are quite convenient in my opinion. May I ask what Git tool you are using (given you even work with Windows)?
Zloxx II: action platformer
Thor Library: particle systems, animations, dot products, ...
SFML Game Development:

Tank

  • SFML Team
  • Hero Member
  • *****
  • Posts: 1486
    • View Profile
    • Blog
    • Email
My plans for the website tools
« Reply #14 on: March 18, 2011, 05:47:12 pm »
Quote
Yep, sounds good. However I hope that it won't become too complicated to retrieve and compile all those separate things, compared to the current situation where everything is at the same place.

True, but I think the proper maintainers will take care of that so that it's as easy as presently. They can still stick to the bindings/ sub-directory, i.e. the readme says "Extract the archive to your bindings sub-directory of SFML and blah...".

Quote from: "Nexus"
Hm, do you know a good alternative? I'm not a big fan of command line tools on Windows

TortoiseGit works without problems, you just have to make sure you understand the principles of Git, which may get a bit lost under the Tortoise GUI. In my opinion using the CLI of Git is the best way to learn it.